JP2011243116A - Memory system and data transfer method therefor - Google Patents
Memory system and data transfer method therefor Download PDFInfo
- Publication number
- JP2011243116A JP2011243116A JP2010116600A JP2010116600A JP2011243116A JP 2011243116 A JP2011243116 A JP 2011243116A JP 2010116600 A JP2010116600 A JP 2010116600A JP 2010116600 A JP2010116600 A JP 2010116600A JP 2011243116 A JP2011243116 A JP 2011243116A
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- memory buffer
- data transfer
- pages
- 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.)
- Withdrawn
Links
Images
Landscapes
- Information Transfer Systems (AREA)
Abstract
【課題】メモリシステムの回路面積を縮小する。
【解決手段】メモリシステム10は、データ部に対して誤り訂正のためのパリティビットを生成するECCエンコーダ17と、ページ単位でデータを格納する不揮発性メモリ11と、パリティビットを用いてデータ部の誤りを訂正するECCデコーダ18と、不揮発性メモリ11から読み出されたページ、或いはECCエンコーダ17から転送されたフレームを一時的に格納する第1のメモリバッファ15と、パリティビットが付加される直前のデータ部、或いはECCデコーダ18により誤りが訂正されたデータ部を一時的に格納する第2のメモリバッファ19と、不揮発性メモリ11及び第2のメモリバッファ19間のデータ転送を制御し、かつデータコピー動作時に第1のメモリバッファ15をシリアルにアクセスするデータ転送制御部22とを含む。
【選択図】 図1A circuit area of a memory system is reduced.
A memory system includes an ECC encoder that generates a parity bit for error correction for a data portion, a nonvolatile memory that stores data in units of pages, and a parity bit used to store the data portion. An ECC decoder 18 for correcting an error, a first memory buffer 15 for temporarily storing a page read from the nonvolatile memory 11 or a frame transferred from the ECC encoder 17, and immediately before a parity bit is added. The second memory buffer 19 for temporarily storing the data portion of the data, or the data portion whose error has been corrected by the ECC decoder 18, and the data transfer between the nonvolatile memory 11 and the second memory buffer 19, and Data transfer control for serially accessing the first memory buffer 15 during a data copy operation And a 22.
[Selection] Figure 1
Description
本発明の実施形態は、メモリシステム及びそのデータ転送方法に関する。 Embodiments described herein relate generally to a memory system and a data transfer method thereof.
不揮発性半導体メモリとしては、データの書き込み及び消去を電気的に行うEEPROM(Electrically Erasable Programmable Read Only Memory)の一種であるNAND型フラッシュメモリが知られている。NAND型フラッシュメモリは高集積化が進んでいるが、高集積化を達成する技術の1つとして多値化が挙げられる。多値化とは、1個のセルに通常1ビットデータを記録するところを2ビット以上のデータを記録できる仕組みをいう。 As a nonvolatile semiconductor memory, a NAND flash memory which is a kind of EEPROM (Electrically Erasable Programmable Read Only Memory) that electrically writes and erases data is known. NAND-type flash memory has been highly integrated, and one of the technologies for achieving high integration is multilevel. Multi-leveling refers to a mechanism in which data of 2 bits or more can be recorded when 1 bit data is normally recorded in one cell.
1個のセルに例えば3ビットデータ(8値データ)を記録可能であるとすると、3ページの各々にデータを含むようにデータ単位を構成し、このデータ単位に対してECC用のパリティビットを付加している場合、データ読み出し時に3ページ分のデータをNAND型フラッシュメモリから読み出す必要があり、この3ページをメモリバッファに格納する。よって、1ページのデータサイズが増えると、メモリバッファの容量も増え、メモリバッファの回路面積が大きくなる。 For example, if it is possible to record 3-bit data (eight-value data) in one cell, a data unit is configured to include data in each of three pages, and an ECC parity bit is set for this data unit. In the case of addition, it is necessary to read out data for three pages from the NAND flash memory when reading data, and these three pages are stored in the memory buffer. Therefore, as the data size of one page increases, the capacity of the memory buffer increases and the circuit area of the memory buffer increases.
また、多値フラッシュメモリは、データの読み出しに時間がかかる。このため、現在処理している3ページの次の3ページの読み出しを行うことで読み出し速度を速くすることが考えられるが、この場合、さらに6ページ分の容量を有するメモリバッファが必要になり、メモリバッファの回路面積が大きくなる。 Further, the multi-level flash memory takes time to read data. For this reason, it is conceivable to increase the reading speed by reading the next three pages of the currently processed three pages. In this case, however, a memory buffer having a capacity for six pages is required. The circuit area of the memory buffer is increased.
さらに、データコピー時には、メモリバッファからのデータ読み出しと、メモリバッファへのデータ書き込みとが同時に実行される。このため、メモリバッファはリードポートとライトポートとのデュアルポートを持つメモリで構成する必要がり、このデュアルポートを持つメモリバッファを用いると、回路規模が増大してしまう。 Further, at the time of data copying, data reading from the memory buffer and data writing to the memory buffer are executed simultaneously. For this reason, the memory buffer needs to be composed of a memory having a dual port of a read port and a write port, and if this memory buffer having a dual port is used, the circuit scale increases.
実施形態は、回路面積を縮小することが可能なメモリシステム及びそのデータ転送方法を提供する。 Embodiments provide a memory system and a data transfer method thereof capable of reducing a circuit area.
実施形態に係るメモリシステムは、データ部に対して誤り訂正のためのパリティビットを生成するECCエンコーダと、前記データ部及び前記パリティビットからフレームが構成され、複数のフレームからページが構成され、このページ単位でデータを格納する不揮発性メモリと、前記パリティビットを用いて前記データ部の誤りを訂正するECCデコーダと、前記不揮発性メモリから読み出されたページ、或いは前記ECCエンコーダから転送されたフレームを一時的に格納する第1のメモリバッファと、前記パリティビットが付加される直前のデータ部、或いは前記ECCデコーダにより誤りが訂正されたデータ部を一時的に格納する第2のメモリバッファと、前記不揮発性メモリ及び前記第2のメモリバッファ間のデータ転送を制御し、かつデータコピー動作時に前記第1のメモリバッファをシリアルにアクセスするデータ転送制御部とを具備する。 The memory system according to the embodiment includes an ECC encoder that generates a parity bit for error correction for a data portion, a frame is configured from the data portion and the parity bit, and a page is configured from a plurality of frames. A nonvolatile memory that stores data in units of pages, an ECC decoder that corrects an error in the data portion using the parity bit, a page read from the nonvolatile memory, or a frame transferred from the ECC encoder A first memory buffer that temporarily stores a data portion immediately before the parity bit is added, or a second memory buffer that temporarily stores a data portion in which an error is corrected by the ECC decoder, Controlling data transfer between the non-volatile memory and the second memory buffer; And it includes a data transfer controller for accessing said first memory buffer into serial in data copying operation.
以下、実施形態について図面を参照して説明する。以下に示す幾つかの実施形態は、本発明の技術思想を具体化するための装置および方法を例示したものであって、構成部品の形状、構造、配置などによって、本発明の技術思想が特定されるものではない。なお、以下の説明において、同一の機能及び構成を有する要素については、同一符号を付し、重複説明は必要な場合にのみ行う。 Hereinafter, embodiments will be described with reference to the drawings. The following embodiments exemplify apparatuses and methods for embodying the technical idea of the present invention, and the technical idea of the present invention is specified by the shape, structure, arrangement, etc. of components. Is not to be done. 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の実施形態]
図1は、第1の実施形態に係るメモリシステム10の構成を示すブロック図である。メモリシステム10は、不揮発性半導体メモリであるNAND型フラッシュメモリ11と、このNAND型フラッシュメモリ11を制御するコントローラ13とを備えている。メモリシステムは、SDカード(登録商標)のようなメモリカードの形態でもよいし、電子機器に不揮発性半導体メモリとコントローラとのセットが組み込まれるよう構成されていてもよい。
[First Embodiment]
FIG. 1 is a block diagram showing a configuration of a
NAND型フラッシュメモリ11は、メモリセルがマトリクス状に配列されたメモリセルアレイ12を備えている。図2は、メモリセルアレイ12の構成を示す回路図である。
The NAND flash memory 11 includes a
メモリセルアレイ12は、j個のブロックBLK0〜BLKj−1を備えている(jは、1以上の整数)。ブロックBLKは、データ消去の単位である。各ブロックBLKは、ロウ方向に沿って順に配列されたm個のNANDストリングを備えている(mは、1以上の整数)。NANDストリングに含まれる選択トランジスタST1は、ドレインがビット線BLに接続され、ゲートが選択ゲート線SGDに共通接続されている。NANDストリングに含まれる選択トランジスタST2は、ソースがソース線SLに共通接続され、ゲートが選択ゲート線SGSに共通接続されている。
The
各メモリセルトランジスタMTは、p型ウェル上に形成された積層ゲート構造を備えたMOSFET(Metal Oxide Semiconductor Field Effect Transistor)により構成されている。積層ゲート構造は、p型ウェル上にゲート絶縁膜を介在して形成された電荷蓄積層(浮遊ゲート電極)、及び浮遊ゲート電極上にゲート間絶縁膜を介在して形成された制御ゲート電極を含んでいる。メモリセルトランジスタMTは、浮遊ゲート電極に蓄えられる電子の数に応じて閾値電圧が変化し、この閾値電圧の違いに応じてデータを記憶する。メモリセルトランジスタMTは、2値データ(1ビットデータ)を記憶するように構成されていてもよいし、多値データ(2ビット以上のデータ)を記憶するように構成されていてもよい。本実施形態では、メモリセルトランジスタMTは、例えば多値データとして3ビットデータ(8値データ)を記憶するものとする。 Each memory cell transistor MT is composed of a MOSFET (Metal Oxide Semiconductor Field Effect Transistor) having a stacked gate structure formed on a p-type well. The stacked gate structure includes a charge storage layer (floating gate electrode) formed on a p-type well with a gate insulating film interposed therebetween, and a control gate electrode formed on the floating gate electrode with an inter-gate insulating film interposed therebetween. Contains. In the memory cell transistor MT, the threshold voltage changes according to the number of electrons stored in the floating gate electrode, and data is stored according to the difference in threshold voltage. The memory cell transistor MT may be configured to store binary data (1 bit data), or may be configured to store multilevel data (data of 2 bits or more). In the present embodiment, the memory cell transistor MT is assumed to store, for example, 3-bit data (8-value data) as multi-value data.
各NANDストリングにおいて、n個(nは、1以上の整数)のメモリセルトランジスタMTは、選択トランジスタST1のソースと選択トランジスタST2のドレインとの間に、それぞれの電流経路が直列接続されるように配置されている。すなわち、n個のメモリセルトランジスタMTは、隣接するもの同士で拡散領域(ソース領域若しくはドレイン領域)を共有するような形でカラム方向に直列接続される。 In each NAND string, each of n (n is an integer of 1 or more) memory cell transistors MT is connected in series between the source of the selection transistor ST1 and the drain of the selection transistor ST2. Has been placed. That is, n memory cell transistors MT are connected in series in the column direction so that adjacent ones share a diffusion region (source region or drain region).
各NANDストリングにおいて、最もソース側に位置するメモリセルトランジスタMTから順に、制御ゲート電極がワード線WL0〜WLn−1にそれぞれ接続されている。従って、ワード線WLn−1に接続されたメモリセルトランジスタMTのドレインは選択トランジスタST1のソースに接続され、ワード線WL0に接続されたメモリセルトランジスタMTのソースは選択トランジスタST2のドレインに接続されている。 In each NAND string, the control gate electrodes are connected to the word lines WL0 to WLn−1 in order from the memory cell transistor MT located closest to the source. Accordingly, the drain of the memory cell transistor MT connected to the word line WLn−1 is connected to the source of the selection transistor ST1, and the source of the memory cell transistor MT connected to the word line WL0 is connected to the drain of the selection transistor ST2. Yes.
ワード線WL0〜WLn−1は、ブロックBLK内のNANDストリング間で、メモリセルトランジスタMTの制御ゲート電極を共通に接続している。つまり、ブロック内において同一行にあるメモリセルトランジスタMTの制御ゲート電極は、同一のワード線WLに接続される。この同一のワード線WLに接続されるm個のメモリセルトランジスタMTはページとして取り扱われ、このページごとにデータの書き込み及び読み出しが行われる。本実施形態では、1個のメモリセルトランジスタMTが3ビットデータを記憶するため、同一ワード線WLに接続されるm個のメモリセルトランジスタMTは、3ページを記憶する。 The word lines WL0 to WLn-1 connect the control gate electrodes of the memory cell transistors MT in common between the NAND strings in the block BLK. That is, the control gate electrodes of the memory cell transistors MT in the same row in the block are connected to the same word line WL. The m memory cell transistors MT connected to the same word line WL are handled as pages, and data is written and read for each page. In this embodiment, since one memory cell transistor MT stores 3-bit data, m memory cell transistors MT connected to the same word line WL store three pages.
また、ビット線BL0〜BLm−1は、ブロックBLK間で、選択トランジスタST1のドレインを共通に接続している。つまり、ブロックBLK0〜BLKj−1内において同一列にあるNANDストリングは、同一のビット線BLに接続される。 The bit lines BL0 to BLm-1 connect the drains of the selection transistors ST1 in common between the blocks BLK. That is, NAND strings in the same column in the blocks BLK0 to BLKj-1 are connected to the same bit line BL.
図示は省略するが、NAND型フラッシュメモリ11は、メモリセルアレイ12に対してデータの書き込み、読み出し及び消去を行う回路を備えている。例えば、NAND型フラッシュメモリ11は、メモリセルアレイ12の列を選択するカラムデコーダ、メモリセルアレイ12の行を選択するロウデコーダ、メモリセルからデータを読み出すためのセンスアンプ回路、読み出し及び書き込みデータを保持するデータキャッシュなどを含む。
Although not shown, the NAND flash memory 11 includes a circuit for writing, reading, and erasing data with respect to the
コントローラ13は、フラッシュインタフェース14、第1のメモリバッファ15、データ選択回路16、ECC(Error Checking and Correcting)エンコーダ17、ECCデコーダ18、第2のメモリバッファ19、バスブリッジ20、システムバス21、及びデータ転送制御部22を備えている。
The
フラッシュインタフェース14は、NAND型フラッシュメモリ11との間のインタフェース処理を実行する。具体的には、フラッシュインタフェース14は、NAND型フラッシュメモリ11にコマンド及びアドレスを供給し、NAND型フラッシュメモリ11との間でデータの受け渡しを行う。
The
ECCエンコーダ17は、書き込みデータを受け、この書き込みデータに対して誤り訂正符号(パリティビット)を生成する。また、ECCエンコーダ17は、所定のデータサイズを計算単位としてパリティビットを生成する。このパリティビットは、書き込みデータに付加され、書き込みデータと共にNAND型フラッシュメモリ11に書き込まれる。本実施形態では、ECC計算単位としてのデータ部と、パリティビットとを合わせてフレームを呼ぶ。ECCデコーダ18は、読み出しデータを受け、この読み出しデータに付加されたパリティビットを用いて、読み出しデータの誤りを訂正する。
The
データ選択回路16は、データコピー動作時に、ECCエンコーダ17から送られる書き込みデータを第1のメモリバッファ15に送る。データコピーとは、NAND型フラッシュメモリ11の第1のブロックに格納されたデータの全部或いは一部を第2のブロックに移動する処理である。NAND型フラッシュメモリ11は、ブロック単位でしかデータの消去ができないため、第1のブロック内の一部のページを書き換える場合、この書き換えるページを第2のブロックに書き込むとともに第1のブロック内の書き換えられないページも第2のブロックに書き込まれる。或いは、NAND型フラッシュメモリの寿命を長くするために、使用頻度の高い第1のブロックと使用頻度の低い第2のブロックとの間でデータコピーが行われる。
The
第1のメモリバッファ15は、NAND型フラッシュメモリ11からの読み出しデータ、或いはNAND型フラッシュメモリ11に書き込む直前の、ECCエンコーダ17によってパリティビットが付加された書き込みデータを一時的に格納する。第1のメモリバッファ15は、バンク構造を有しており、第1のバンク15−1及び第2のバンク15−2を含む複数のバンクを備えている。NAND型フラッシュメモリ11から多値データを読み出す場合、読み出し処理が複雑なため、時間がかかる。よって、本実施形態では、第1のバンク15−1及び第2のバンク15−2に交互に3ページ分のデータを格納することで、読み出し時間を短縮できるようにしている。
The first memory buffer 15 temporarily stores read data from the NAND flash memory 11 or write data to which a parity bit is added by the
また、第1のメモリバッファ15の入出力ポート(I/O port)は、シングルポートである。よって、第1のメモリバッファ15に対しては書き込み及び読み出しを同時に行うことはできず、第1のメモリバッファ15にアクセスする場合は、シリアルアクセスのみ、つまり書き込み及び読み出しの一方のみが可能である。本実施形態のように第1のメモリバッファ15がバンク構造を有している場合、第1のバンク15−1及び第2のバンク15−2の各々がシングルポート構造を有している。第1のメモリバッファ15をシングルポートにすることで、第1のメモリバッファ15をダブルポートにする場合に比べて、回路面積を縮小することができる。 The input / output port (I / O port) of the first memory buffer 15 is a single port. Accordingly, writing and reading cannot be performed simultaneously on the first memory buffer 15, and when accessing the first memory buffer 15, only serial access, that is, only one of writing and reading is possible. . When the first memory buffer 15 has a bank structure as in the present embodiment, each of the first bank 15-1 and the second bank 15-2 has a single port structure. By making the first memory buffer 15 a single port, the circuit area can be reduced as compared with the case where the first memory buffer 15 is a double port.
第2のメモリバッファ19は、パリティビットを付加する直前の書き込みデータ、或いはECCデコーダ18で訂正を終えた読み出しデータを一時的に格納する。メモリバッファ15及び18の各々は、例えばRAMから構成される。バスブリッジ20は、第2のメモリバッファ19とシステムバス21との間のインタフェース処理を実行する。
The
データ転送制御部22は、ハードウェア処理により、NAND型フラッシュメモリ11とシステムバス21との間のデータ転送処理を実行する。このために、データ転送制御部22は、図1に示した各モジュールに制御信号を送り、また、各モジュールから状態フラグ信号を受ける。データ転送制御部22は、この状態フラグ信号によって各モジュールのデータ転送状況を確認しながらデータ転送を制御する。
The data
この他に、図示は省略するが、システムバス21には、中央演算処理装置(CPU:Central Processing Unit)、及びROM(Read Only Memory)が接続されている。CPUは、ROMに格納されたファームウェアを用いて、メモリシステム10全体の動作を統括的に制御する。CPUは、制御バス(図示せず)を経由してデータ転送制御部22に制御信号を送り、また、システムバス21を経由して各種モジュールとの間でデータの受け渡しを行う。なお、システムバス21には、メモリシステム10の動作に必要なRAM(Random Access Memory)やホストインタフェースなども接続されている。
In addition, although not shown, the system bus 21 is connected to a central processing unit (CPU) and a read only memory (ROM). The CPU controls the overall operation of the
図3は、第1のメモリバッファ15に格納されるデータ構造を説明する概略図である。前述したように、本実施形態では1個のメモリセルトランジスタMTが3ビットデータを記憶するため、同一ワード線WLに接続されるm個のメモリセルトランジスタMTから3ページ(第1ページ〜第3ページ)が読み出される。この3ページは、第1のメモリバッファ15の1個のバンクに格納される。図3では、横一列が1ページである。 FIG. 3 is a schematic diagram illustrating the data structure stored in the first memory buffer 15. As described above, in this embodiment, since one memory cell transistor MT stores 3-bit data, three pages (first page to third page) from m memory cell transistors MT connected to the same word line WL. Page) is read. These three pages are stored in one bank of the first memory buffer 15. In FIG. 3, one horizontal row is one page.
第1ページ〜第3ページは誤り発生率が異なるため、同一ページ内でフレームを割り当てると、フレーム間での誤り発生率が異なってしまう。このため、NAND型フラッシュメモリ11に記憶されたデータの信頼性が低下する。よって、本実施形態では、第1ページ〜第3ページを縦方向に複数に分割し、第1ページ〜第3ページに亘ってフレームを定義している。これにより、フレーム間で誤り発生率を平準化できるため、データ信頼性を向上できる。図3に示すように、第1ページ〜第3ページは、複数のフレーム(F0〜Fi:iは1以上の整数)が集まって構成されており、1フレームは、データ部(データ部1〜データ部3)とパリティ部とから構成されている。
Since the first to third pages have different error rates, if the frames are allocated within the same page, the error rates are different between frames. For this reason, the reliability of the data stored in the NAND flash memory 11 is lowered. Therefore, in the present embodiment, the first page to the third page are divided into a plurality of parts in the vertical direction, and a frame is defined over the first page to the third page. Thereby, since the error occurrence rate can be leveled between frames, data reliability can be improved. As shown in FIG. 3, the first page to the third page are configured by collecting a plurality of frames (F0 to Fi: i is an integer of 1 or more), and one frame includes a data portion (
(動作)
次に、このように構成されたメモリシステム10の動作について説明する。図4は、コントローラ13のデータコピー動作を示すフローチャートである。図5は、コントローラ13のデータコピー動作を説明するタイミングチャートである。例えば、3ページは、(i+1)個のフレームF0〜Fiから構成されているものとする。
(Operation)
Next, the operation of the
まず、フラッシュインタフェース14は、NAND型フラッシュメモリ11から3ページを読み出す(ステップS101)。続いて、データ転送制御部22は、NAND型フラッシュメモリ11から読み出された3ページを第1のメモリバッファ15(具体的には、第1のバンク15−1)に転送する。これにより、NAND型フラッシュメモリ11から読み出された3ページが第1のメモリバッファ15に格納される(ステップS102)。
First, the
続いて、データ転送制御部22は、第1のメモリバッファ15に格納されたフレームF0をECCデコーダ18に転送する(ステップS103)。続いて、ECCデコーダ18は、フレームF0内のパリティビットを用いて、同じくフレームF0内のデータ部の誤りを訂正する(ステップS104)。
Subsequently, the data
続いて、データ転送制御部22は、誤り訂正が完了したフレームF0内のデータ部を第2のメモリバッファ19に転送する(ステップS105)。第2のメモリバッファ19は、ECCデコーダ18から転送されたデータ部を一時的に格納する。第2のメモリバッファ19の記憶領域は、例えば1フレームである。
Subsequently, the data
続いて、データ転送制御部22は、第2のメモリバッファ19に格納されたデータ部をECCエンコーダ17に転送する(ステップS106)。続いて、ECCエンコーダ17は、ECCエンコーダ17から転送されたデータ部に対してパリティビットを生成する(ステップS107)。
Subsequently, the data
続いて、データ転送制御部22は、データ部にパリティビットが付加されて構成されたフレームF0をデータ選択回路16に転送する。データ選択回路16は、フレームF0を選択し、第1のメモリバッファ15の第1のバンク15−1に転送する。これにより、フレームF0がECCエンコーダ17から第1のメモリバッファ15の第1のバンク15−1に転送される(ステップS108)。
Subsequently, the data
以後、ステップS103〜S108と同様の手順で、フレームF1〜Fiが順番に、第1のメモリバッファ15の第1のバンク15−1から、ECCデコーダ18、第2のメモリバッファ19及びECCエンコーダを介して、再度第1のメモリバッファ15の第1のバンク15−1に転送される(ステップS109)。
Thereafter, the frames F1 to Fi are sequentially transferred from the first bank 15-1 of the first memory buffer 15 to the
続いて、データ転送制御部22は、第1のメモリバッファ15の第1のバンク15−1に格納された3ページをフラッシュインタフェース14に転送する。フラッシュインタフェース14は、この3ページをNAND型フラッシュメモリ11に書き込む(ステップS110)。このようにして、NAND型フラッシュメモリ11のコピー動作が完了する。
Subsequently, the data
なお、NAND型フラッシュメモリ11から第1のメモリバッファ15の第1のバンク15−1に3ページが読み出された後、続いて、NAND型フラッシュメモリ11から第1のメモリバッファ15の第1のバンク15−2に次の3ページが読み出される。これにより、最初の3ページのコピー動作が完了した後、直ぐに次の3ページのコピー動作を実行することができるため、コピー動作を高速化することができる。 In addition, after three pages are read from the NAND flash memory 11 to the first bank 15-1 of the first memory buffer 15, the first flash memory 11 from the NAND flash memory 11 continues to the first of the first memory buffer 15. The next three pages are read into the bank 15-2. As a result, the copying operation for the next three pages can be executed immediately after the copying operation for the first three pages is completed, so that the copying operation can be speeded up.
このように、第1のメモリバッファ15からECCデコーダ18へ1フレーム分のデータが転送され、ECCデコーダ18により誤り訂正されたデータ部が第2のメモリバッファ19に一時的に格納される(以降、データ転送(1))。次に、第2のメモリバッファ19に格納されたデータ部がECCエンコーダ17に転送され、ECCエンコーダ17によりパリティビットがデータ部に付加され、データ部とパリティビットからなる1フレームが再度第1のメモリバッファ15に一時的に格納される(以降、データ転送(2))。データ転送制御部22は、優先順位に基づいてデータ転送(1)及びデータ転送(2)のどちらを実行するかを判断する。よって、図5に示すように、データ転送制御部22がデータ転送(1)及びデータ転送(2)を繰り返すことで、第1のメモリバッファ15は、シリアルにアクセスされる。
In this way, one frame of data is transferred from the first memory buffer 15 to the
次に、NAND型フラッシュメモリ11からのデータ読み出し動作について説明する。NAND型フラッシュメモリから読み出されたデータはフラッシュインタフェース14を経由し第1のメモリバッファ15に一時的に格納される。このデータ転送では、3ページ分のデータが連続して転送される。その後、1フレーム単位で第1のメモリバッファ15からECCデコーダ18にデータ転送され、データ訂正が完了した後、訂正されたデータが第2のメモリバッファ19に一時的に格納される。そして、第2のメモリバッファ19からバスブリッジ20を経由してシステムバス21にデータが転送される。この動作を3ページのフレーム数分繰り返すことで、NAND型フラッシュメモリ11からの3ページの読み出し動作が完了する。
Next, a data read operation from the NAND flash memory 11 will be described. Data read from the NAND flash memory is temporarily stored in the first memory buffer 15 via the
次に、NAND型フラッシュメモリ11へのデータ書き込み動作について説明する。システムバス21側から入力された1フレーム分のデータが第2のメモリバッファ19に一時的に格納される。第2のメモリバッファ19に格納されたデータはECCエンコーダ17に転送されデータ部のパリティビットが生成され、データ部及びパリティビットからなる1フレームは第1のメモリバッファ15に一時的に格納される。この動作が3ページのフレーム数分繰り返される。その後、第1のメモリバッファ15からフラッシュインタフェース14を経由してNAND型フラッシュメモリ11に3ページ分のデータが書き込まれる。このような読み出し動作及び書き込み動作に必要なデータ転送制御は、データ転送制御部22によって実行される。
Next, a data write operation to the NAND flash memory 11 will be described. One frame of data input from the system bus 21 side is temporarily stored in the
(効果)
以上詳述したように第1の実施形態では、NAND型フラッシュメモリ11のデータコピー動作において、NAND型フラッシュメモリ11から読み出された3ページを第1のメモリバッファ15に一時的に格納する。そして、データ転送制御部22は、1フレーム単位で、ECCデコーダ18、第2のメモリバッファ19、ECCエンコーダ17、第1のメモリバッファ15の順にデータを転送することで、第1のメモリバッファ15をシリアルアクセスするようにしている。
(effect)
As described above in detail, in the first embodiment, three pages read from the NAND flash memory 11 are temporarily stored in the first memory buffer 15 in the data copy operation of the NAND flash memory 11. Then, the data
従って第1の実施形態によれば、第1のメモリバッファ15の入出力ポートをシングルポートにすることができる。これにより、第1のメモリバッファ15の回路面積を縮小することができ、ひいてはメモリシステム10の回路面積を縮小することができる。
Therefore, according to the first embodiment, the input / output port of the first memory buffer 15 can be a single port. Thereby, the circuit area of the first memory buffer 15 can be reduced, and as a result, the circuit area of the
また、メモリセルトランジスタMTが複数ビット(本実施形態では、一例として3ビット)を記憶可能であり、このため、第1のメモリバッファ15は、1回のデータ転送において3ページを一時的に格納する。そして、ECCの計算単位であるデータ部とパリティビットからなるフレームは、3ページの各々の一部を含むように構成されている。これにより、ページ間で誤り発生率が異なる場合でも、フレーム間で誤り発生率を平準化することができる。このため、NAND型フラッシュメモリ11に記憶されたデータの信頼性を向上できる。 In addition, the memory cell transistor MT can store a plurality of bits (in this embodiment, 3 bits as an example). For this reason, the first memory buffer 15 temporarily stores three pages in one data transfer. To do. A frame made up of a data part and a parity bit, which is an ECC calculation unit, is configured to include a part of each of the three pages. Thereby, even when the error occurrence rate differs between pages, the error occurrence rate can be leveled between frames. For this reason, the reliability of the data stored in the NAND flash memory 11 can be improved.
また、第1のメモリバッファ15は、バンク構造を有している。このため、NAND型フラッシュメモリ11から第1のバンクに3ページを読み出した後に、連続して第2のバンクに次の3ページの読み出しを開始することができる。この結果、読み出し速度の高速化が可能となり、ひいてはデータコピー動作の高速化が可能となる。 The first memory buffer 15 has a bank structure. Therefore, after reading three pages from the NAND flash memory 11 to the first bank, it is possible to start reading the next three pages to the second bank continuously. As a result, it is possible to increase the reading speed, and consequently to increase the data copy operation.
また、データ転送制御部22がNAND型フラッシュメモリ11とシステムバス21との間のデータ転送処理を行うようにしている。すなわち、CPUがNAND型フラッシュメモリ11とシステムバス21との間のデータ転送処理を担わずに済むため、CPUの処理負荷を低減することができる。
In addition, the data
[第2の実施形態]
データコピー時のデータ転送単位は、第1の実施形態のように1フレームに限らず、それ以外のデータサイズにすることも可能である。第2の実施形態は、データコピー時のデータ転送単位の他の例を示している。
[Second Embodiment]
The data transfer unit at the time of data copying is not limited to one frame as in the first embodiment, and other data sizes can be used. The second embodiment shows another example of a data transfer unit at the time of data copying.
図6は、第1の例に係るコントローラ13のデータコピー動作を説明するタイミングチャートである。図6のように、2フレーム単位で第1のメモリバッファ15をシリアルアクセスすることも可能である。この場合、図4のフローチャートにおいて、ステップS103〜S108の処理を2フレームで行えばよい。第1の例では、第2のメモリバッファ19の記憶容量は、2フレームとなる。
FIG. 6 is a timing chart for explaining the data copy operation of the
図7は、第2の例に係るコントローラ13のデータコピー動作を説明するタイミングチャートである。第2の例では、第2のメモリバッファ19の記憶容量は、2フレームである。図7のように、最初の2フレームに対してデータ転送(1)を実行し、第2のメモリバッファ19が一杯になったところで、1フレーム単位でデータ転送(2)及びデータ転送(1)を繰り返すようにしてもよい。
FIG. 7 is a timing chart for explaining the data copy operation of the
図8は、第3の例に係るコントローラ13のデータコピー動作を説明するタイミングチャートである。第2のメモリバッファ19の記憶容量は、3ページ(F0〜Fi)である。この場合は、図8のように、データ転送(1)を3ページ分連続して行った後に、データ転送(2)を3ページ分連続して行うようにしてもよい。
FIG. 8 is a timing chart for explaining the data copy operation of the
第2の実施形態で説明したデータ転送を実行した場合でも、第1の実施形態と同様の効果を得ることができる。 Even when the data transfer described in the second embodiment is executed, the same effect as in the first embodiment can be obtained.
本発明は、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲内で、構成要素を変形して具体化することが可能である。さらに、上記実施形態には種々の段階の発明が含まれており、1つの実施形態に開示される複数の構成要素の適宜な組み合わせ、若しくは異なる実施形態に開示される構成要素の適宜な組み合わせにより種々の発明を構成することができる。例えば、実施形態に開示される全構成要素から幾つかの構成要素が削除されても、発明が解決しようとする課題が解決でき、発明の効果が得られる場合には、これらの構成要素が削除された実施形態が発明として抽出されうる。 The present invention is not limited to the above embodiment, and can be embodied by modifying the constituent elements without departing from the scope of the invention. Further, the above embodiments include inventions at various stages, and are obtained by appropriately combining a plurality of constituent elements disclosed in one embodiment or by appropriately combining constituent elements disclosed in different embodiments. Various inventions can be configured. For example, even if some constituent elements are deleted from all the constituent elements disclosed in the embodiments, the problems to be solved by the invention can be solved and the effects of the invention can be obtained. Embodiments made can be extracted as inventions.
BLK…ブロック、MT…メモリセルトランジスタ、ST1,ST2…選択トランジスタ、BL…ビット線、WL…ワード線、SL…ソース線、SGD,SGS…選択ゲート線、10…メモリシステム、11…NAND型フラッシュメモリ、12…メモリセルアレイ、13…コントローラ、14…フラッシュインタフェース、15…第1のメモリバッファ、16…データ選択回路、17…ECCエンコーダ、18…ECCデコーダ、19…第2のメモリバッファ、20…バスブリッジ、21…システムバス、22…データ転送制御部。 BLK ... block, MT ... memory cell transistor, ST1, ST2 ... select transistor, BL ... bit line, WL ... word line, SL ... source line, SGD, SGS ... select gate line, 10 ... memory system, 11 ... NAND flash Memory, 12 ... Memory cell array, 13 ... Controller, 14 ... Flash interface, 15 ... First memory buffer, 16 ... Data selection circuit, 17 ... ECC encoder, 18 ... ECC decoder, 19 ... Second memory buffer, 20 ... Bus bridge, 21... System bus, 22.
Claims (6)
前記データ部及び前記パリティビットからフレームが構成され、複数のフレームからページが構成され、このページ単位でデータを格納する不揮発性メモリと、
前記パリティビットを用いて前記データ部の誤りを訂正するECCデコーダと、
前記不揮発性メモリから読み出されたページ、或いは前記ECCエンコーダから転送されたフレームを一時的に格納する第1のメモリバッファと、
前記パリティビットが付加される直前のデータ部、或いは前記ECCデコーダにより誤りが訂正されたデータ部を一時的に格納する第2のメモリバッファと、
前記不揮発性メモリ及び前記第2のメモリバッファ間のデータ転送を制御し、かつデータコピー動作時に前記第1のメモリバッファをシリアルにアクセスするデータ転送制御部と、
を具備することを特徴とするメモリシステム。 An ECC encoder that generates parity bits for error correction for the data portion;
A non-volatile memory configured to form a frame from the data portion and the parity bit, to form a page from a plurality of frames, and to store data in units of pages,
An ECC decoder for correcting an error in the data portion using the parity bit;
A first memory buffer for temporarily storing a page read from the non-volatile memory or a frame transferred from the ECC encoder;
A second memory buffer for temporarily storing a data part immediately before the parity bit is added or a data part in which an error is corrected by the ECC decoder;
A data transfer control unit that controls data transfer between the non-volatile memory and the second memory buffer and serially accesses the first memory buffer during a data copy operation;
A memory system comprising:
前記第1のメモリバッファは、前記不揮発性メモリから読み出されたnページを一時的に格納することを特徴とする請求項1に記載のメモリシステム。 The nonvolatile memory includes a plurality of memory cells capable of storing n-bit data (n is an integer of 2 or more), and stores data in units of n pages.
The memory system according to claim 1, wherein the first memory buffer temporarily stores n pages read from the nonvolatile memory.
前記メモリシステムは、
データ部に対して誤り訂正のためのパリティビットを生成するECCエンコーダと、
前記データ部及び前記パリティビットからフレームが構成され、複数のフレームからページが構成され、このページ単位でデータを格納する不揮発性メモリと、
前記パリティビットを用いて前記データ部の誤りを訂正するECCデコーダと、
前記不揮発性メモリから読み出されたページ、或いは前記ECCエンコーダから転送されたフレームを一時的に格納する第1のメモリバッファと、
前記パリティビットが付加される直前のデータ部、或いは前記ECCデコーダにより誤りが訂正されたデータ部を一時的に格納する第2のメモリバッファと
を具備し、
前記データ転送方法は、
前記不揮発性メモリ及び前記第2のメモリバッファ間のデータ転送を制御する工程と、
データコピー動作時に、前記第1のメモリバッファをシリアルにアクセスする工程と、
を具備することを特徴とするメモリシステムのデータ転送方法。 A data transfer method for a memory system,
The memory system includes:
An ECC encoder that generates parity bits for error correction for the data portion;
A non-volatile memory configured to form a frame from the data portion and the parity bit, to form a page from a plurality of frames, and to store data in units of pages,
An ECC decoder for correcting an error in the data portion using the parity bit;
A first memory buffer for temporarily storing a page read from the non-volatile memory or a frame transferred from the ECC encoder;
A second memory buffer that temporarily stores a data part immediately before the parity bit is added or a data part in which an error is corrected by the ECC decoder;
The data transfer method includes:
Controlling data transfer between the non-volatile memory and the second memory buffer;
Serially accessing the first memory buffer during a data copy operation;
A data transfer method for a memory system, comprising:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010116600A JP2011243116A (en) | 2010-05-20 | 2010-05-20 | Memory system and data transfer method therefor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010116600A JP2011243116A (en) | 2010-05-20 | 2010-05-20 | Memory system and data transfer method therefor |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2011243116A true JP2011243116A (en) | 2011-12-01 |
Family
ID=45409675
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2010116600A Withdrawn JP2011243116A (en) | 2010-05-20 | 2010-05-20 | Memory system and data transfer method therefor |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2011243116A (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9424929B1 (en) | 2015-03-11 | 2016-08-23 | Kabushiki Kaisha Toshiba | Memory system and memory control method |
| WO2017126091A1 (en) * | 2016-01-21 | 2017-07-27 | 株式会社日立製作所 | Storage device, method for control of same, and storage system comprising storage device |
-
2010
- 2010-05-20 JP JP2010116600A patent/JP2011243116A/en not_active Withdrawn
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9424929B1 (en) | 2015-03-11 | 2016-08-23 | Kabushiki Kaisha Toshiba | Memory system and memory control method |
| WO2017126091A1 (en) * | 2016-01-21 | 2017-07-27 | 株式会社日立製作所 | Storage device, method for control of same, and storage system comprising storage device |
| US10802958B2 (en) | 2016-01-21 | 2020-10-13 | Hitachi, Ltd. | Storage device, its controlling method, and storage system having the storage device |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10490286B2 (en) | Electrically-rewritable nonvolatile semiconductor memory device | |
| US11507448B2 (en) | Non-volatile memory device, method of operating the device, and memory system including the device | |
| US20190139614A1 (en) | Semiconductor memory device and memory system | |
| JP5550386B2 (en) | Nonvolatile semiconductor memory device and memory system | |
| US20090016111A1 (en) | Flash memory device and program recovery method thereof | |
| JP2009140564A (en) | NAND flash memory and memory system | |
| US10395753B2 (en) | Semiconductor memory device and programming method thereof | |
| JP5657079B1 (en) | Semiconductor memory device | |
| US10755785B2 (en) | Memory system and method of operating the same | |
| JP2010218637A (en) | Semiconductor storage and method of controlling the same | |
| JP2015176616A (en) | Semiconductor storage device | |
| KR20140028543A (en) | Semiconductor memory device and operating method thereof | |
| JP4945183B2 (en) | Memory controller | |
| TWI648743B (en) | Semiconductor device and method of operating same | |
| US20110010606A1 (en) | Memory system | |
| JP2010152989A (en) | Nonvolatile semiconductor storage device | |
| JP2008108297A (en) | Nonvolatile semiconductor memory device | |
| JP2011128984A (en) | Memory system | |
| US9569142B2 (en) | Semiconductor device and method of operating the same according to degree of deterioration | |
| CN114420185A (en) | Memory, reading operation method thereof and memory system | |
| JP2010128697A (en) | Memory system | |
| JP2011243116A (en) | Memory system and data transfer method therefor | |
| US20190287622A1 (en) | Semiconductor memory device and memory system | |
| US20100332736A1 (en) | Method of operating nonvolatile memory device | |
| JP2013025845A (en) | Nonvolatile semiconductor memory device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20130806 |