[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2009003994A - Semiconductor memory device - Google Patents

Semiconductor memory device Download PDF

Info

Publication number
JP2009003994A
JP2009003994A JP2007161748A JP2007161748A JP2009003994A JP 2009003994 A JP2009003994 A JP 2009003994A JP 2007161748 A JP2007161748 A JP 2007161748A JP 2007161748 A JP2007161748 A JP 2007161748A JP 2009003994 A JP2009003994 A JP 2009003994A
Authority
JP
Japan
Prior art keywords
data
memory
address
nand
read
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
Application number
JP2007161748A
Other languages
Japanese (ja)
Inventor
Yasuharu Takagi
康晴 高木
Kenji Yokozuka
賢志 横塚
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 JP2007161748A priority Critical patent/JP2009003994A/en
Publication of JP2009003994A publication Critical patent/JP2009003994A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a semiconductor memory device which has improved adaptability to an external system. <P>SOLUTION: The semiconductor memory device is provided with a memory for storing data and a memory controller which has a function for converting a logic address supplied from a host device to a physical address of the memory and controls the read-out and write-in of the memory, the memory controller creates redundant data from a data body out of data read out from the memory, adds the redundant data to the data main body and outputs them to the outside, a format of the redundant data is one of a plurality of kinds of formats selected by the memory controller. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

この発明は、データを記憶するメモリ部と、その読み出し/書き込み制御を行うメモリコントローラとを備えた半導体記憶装置に関する。   The present invention relates to a semiconductor memory device including a memory unit that stores data and a memory controller that performs read / write control thereof.

電気的書き換え可能な不揮発性半導体メモリ(EEPROM)の一つとして、NAND型フラッシュメモリが知られている。NAND型フラッシュメモリは、単位セル面積がNOR型に比べて小さく、大容量化が容易である。また、セル単位での読み出し/書き込み速度は、NOR型に比べると遅いが、セルアレイとページバッファとの間で同時に読み出し/書き込みが行われるセル範囲(物理的ページ長)を大きくすることで、実質的に高速の読み出し/書き込みが可能である。   NAND flash memory is known as one of electrically rewritable nonvolatile semiconductor memories (EEPROM). The NAND flash memory has a smaller unit cell area than the NOR type and can easily be increased in capacity. The read / write speed per cell is slower than that of the NOR type, but by increasing the cell range (physical page length) in which reading / writing is simultaneously performed between the cell array and the page buffer, In particular, high-speed reading / writing is possible.

このような特長を活かして、NAND型フラッシュメモリは、ファイルメモリやメモリカードをはじめとする各種記録メディアとして使用されている。   Taking advantage of these features, NAND flash memories are used as various recording media including file memories and memory cards.

メモリカード等においては、不揮発性メモリとメモリコントローラとをパッケージして、ホストから供給されるコマンドと論理アドレスにより、不揮発性メモリの読み出し/書き込みを制御することが行われる。例えば、ホストから論理アドレスとセクタ数を与えることにより、複数セクタのデータ読み出しを行うことも提案されている(特許文献1参照)。   In a memory card or the like, a nonvolatile memory and a memory controller are packaged, and reading / writing of the nonvolatile memory is controlled by a command and a logical address supplied from a host. For example, it has been proposed to read data of a plurality of sectors by giving a logical address and the number of sectors from a host (see Patent Document 1).

しかし、従来のこの種のNAND型フラッシュメモリでは、データに付加された冗長データのフォーマットが予め決まっているため、このフォーマットがホストシステム側から要求される仕様と合致しないと、適合不具合で動作に支障を来すという問題があった。
特開2006−155335号公報
However, in this type of conventional NAND flash memory, the format of the redundant data added to the data is determined in advance. There was a problem of causing trouble.
JP 2006-155335 A

この発明は、外部システムとの適合性を向上させることができる半導体記憶装置を提供することを目的とする。   An object of the present invention is to provide a semiconductor memory device capable of improving compatibility with an external system.

この発明の一態様による半導体記憶装置は、データを記憶するメモリ部と、ホストデバイスから供給された論理アドレスを前記メモリ部の物理アドレスに変換する機能を有し、前記メモリ部の読み出し及び書き込みを制御するメモリコントローラと、を備え、前記メモリコントローラは、前記メモリ部から読み出されるデータのうちのデータ本体から冗長データを作成し、前記データ本体に付加して外部に出力するものであり、前記冗長データのフォーマットは、前記メモリコントローラによって選択された複数種類のフォーマットのうちの一つであることを特徴とする。   A semiconductor memory device according to an aspect of the present invention has a memory unit that stores data, and a function of converting a logical address supplied from a host device into a physical address of the memory unit, and performs reading and writing of the memory unit A memory controller for controlling, the memory controller creates redundant data from a data body of data read from the memory unit, adds the data to the data body, and outputs the data to the outside. The data format is one of a plurality of formats selected by the memory controller.

この発明によれば、外部システムとの適合性を向上させることができる。   According to the present invention, compatibility with an external system can be improved.

以下、図面を参照して、この発明の実施の形態を説明する。   Embodiments of the present invention will be described below with reference to the drawings.

[半導体メモリの構成]
図1は、本実施の形態に係る半導体メモリを示すブロック図である。
[Configuration of semiconductor memory]
FIG. 1 is a block diagram showing a semiconductor memory according to the present embodiment.

この実施の形態の半導体メモリは、例えば一つ或いは複数個のNANDフラッシュメモリ21と、その読み出し/書き込みを制御するメモリコントローラ22とにより一体にパッケージ化されたメモリモジュールを構成する。搭載される全てのフラッシュメモリ21は、一つのメモリコントローラ22で論理メモリとしてコントロールされるので、以下これを、論理ブロックアドレス(Logic Block Address)NANDフラッシュメモリ(以下、LBA−NANDメモリと略称する)という。   The semiconductor memory of this embodiment constitutes a memory module integrally packaged by, for example, one or a plurality of NAND flash memories 21 and a memory controller 22 that controls reading / writing. Since all the mounted flash memories 21 are controlled as a logical memory by a single memory controller 22, this is hereinafter referred to as a logical block address NAND flash memory (hereinafter abbreviated as an LBA-NAND memory). That's it.

LBA−NANDメモリ20に搭載されるNANDフラッシュメモリ21は、1又は複数のメモリチップから構成されている。図1では二つのメモリチップchip1,chip2を示しているが、その場合も一つのメモリコントローラ22で制御される。最大搭載メモリチップ数は、レギュレータの電流能力や他のファクタとの関係で決まるが、例えば4チップとする。   The NAND flash memory 21 mounted on the LBA-NAND memory 20 is composed of one or a plurality of memory chips. In FIG. 1, two memory chips chip 1 and chip 2 are shown, but in this case as well, they are controlled by one memory controller 22. The maximum number of memory chips is determined by the current capacity of the regulator and other factors.

メモリコントローラ22は、フラッシュメモリ21との間でデータ転送を行うためのNANDフラッシュインタフェース23、ホストデバイスとの間でデータ転送を行うためのホストインタフェース25、読み出し/書き込みデータ等を一時保持するバッファRAM26、データ転送制御を行うMPU24、NANDフラッシュメモリ21内のファームウェア(FW)の読み出し/書き込みのシーケンス制御等に用いられるハードウェアシーケンサ27を有する1チップコントローラである。   The memory controller 22 includes a NAND flash interface 23 for transferring data to and from the flash memory 21, a host interface 25 for transferring data to and from the host device, and a buffer RAM 26 for temporarily storing read / write data and the like. This is a one-chip controller having a hardware sequencer 27 that is used for MPU 24 that performs data transfer control, firmware / FW sequence control of firmware (FW) in the NAND flash memory 21, and the like.

なお、NANDフラッシュメモリ21とメモリコントローラ22とが1チップであるか別チップであるかは、このLBA−NANDメモリ20にとって本質的ではない。   Whether the NAND flash memory 21 and the memory controller 22 are one chip or different chips is not essential for the LBA-NAND memory 20.

図2は、図1のNANDフラッシュメモリ21のメモリコア部のセルアレイ構成を示している。   FIG. 2 shows a cell array configuration of the memory core portion of the NAND flash memory 21 of FIG.

メモリセルアレイ1は、複数の電気的書き換え可能な不揮発性メモリセル(図の例では32個のメモリセル)M0−M31が直列接続されたNANDセルユニット(NANDストリング)NUを配列して構成される。   The memory cell array 1 is configured by arranging NAND cell units (NAND strings) NU in which a plurality of electrically rewritable nonvolatile memory cells (32 memory cells in the illustrated example) M0 to M31 are connected in series. .

NANDセルユニットNUの一端は、選択ゲートトランジスタS1を介してビット線BLo,BLeに、他端は選択ゲートトランジスタS2を介して共通ソース線CELSRCに接続される。メモリセルM0−M31の制御ゲートはそれぞれワード線WL0−WL31に接続され、選択ゲートトランジスタS1,S2のゲートは選択ゲート線SGD,SGSに接続される。   One end of the NAND cell unit NU is connected to the bit lines BLo and BLe via the selection gate transistor S1, and the other end is connected to the common source line CELSRC via the selection gate transistor S2. Control gates of memory cells M0-M31 are connected to word lines WL0-WL31, respectively, and gates of select gate transistors S1, S2 are connected to select gate lines SGD, SGS.

ワード線方向に配列されるNANDセルユニットの集合が、データ消去の最小単位となるブロックを構成し、図示のようにビット線の方向に複数のブロックBLK0−BLKn−1が配置される。   A set of NAND cell units arranged in the word line direction constitutes a block serving as a minimum unit of data erasure, and a plurality of blocks BLK0 to BLKn-1 are arranged in the bit line direction as shown in the figure.

ビット線BLe,BLoの一端側に、セルデータの読み出し及び書き込みに供させるセンスアンプ回路3が配置され、ワード線の一端側にワード線及び選択ゲート線の選択駆動を行うロウデコーダ2が配置される。図では、隣接する偶数番ビット線BLeと奇数番ビット線BLoがビット線選択回路により選択的にセンスアンプ回路3の各センスアンプSAに接続される場合を示している。   A sense amplifier circuit 3 used for reading and writing cell data is arranged on one end side of the bit lines BLe and BLo, and a row decoder 2 for selecting and driving the word line and the selection gate line is arranged on one end side of the word line. The The figure shows a case where adjacent even-numbered bit lines BLe and odd-numbered bit lines BLo are selectively connected to each sense amplifier SA of the sense amplifier circuit 3 by a bit line selection circuit.

以上のように構成されたLBA−NANDメモリ20において、コマンド、アドレス(論理アドレス又は物理アドレス)及びデータ、並びにチップ・イネーブル信号/CE、書き込みイネーブル信号/WE、読み出しイネーブル信号/RE、レディ/ビジー信号RY/BY等の外部制御信号は、ホストI/F25に入力される。ホストI/F25では、コマンドや制御信号を、MPU24及びハードウェアシーケンサ27に振り分けると共に、アドレス及びデータをバッファRAM26に格納する。   In the LBA-NAND memory 20 configured as described above, the command, address (logical address or physical address) and data, chip enable signal / CE, write enable signal / WE, read enable signal / RE, ready / busy External control signals such as signals RY / BY are input to the host I / F 25. In the host I / F 25, commands and control signals are distributed to the MPU 24 and the hardware sequencer 27, and addresses and data are stored in the buffer RAM 26.

外部から入力された論理アドレスは、NANDフラッシュI/F23で、NANDフラッシュメモリ21の物理アドレスに変換される。また、各種制御信号に基づくハードウェアシーケンサ27の制御の下、データの転送制御及び書き込み/消去/読み出しのシーケンス制御が実行される。変換された物理アドレスは、NANDフラッシュメモリ21内のアドレスレジスタを介して、ロウデコーダ2やカラムデコーダ(図示せず)に転送される。書き込みデータは、I/O制御回路等を介してセンスアンプ回路3にロードされ、読み出しデータはI/O制御回路等を介して、外部に出力される。   A logical address input from the outside is converted into a physical address of the NAND flash memory 21 by the NAND flash I / F 23. Further, under the control of the hardware sequencer 27 based on various control signals, data transfer control and write / erase / read sequence control are executed. The converted physical address is transferred to the row decoder 2 and the column decoder (not shown) via the address register in the NAND flash memory 21. Write data is loaded into the sense amplifier circuit 3 via an I / O control circuit or the like, and read data is output to the outside via an I / O control circuit or the like.

[メモリ領域]
図3は、この実施の形態のLBA−NANDメモリのメモリ領域の詳細を示す図である。
[Memory area]
FIG. 3 is a diagram showing details of the memory area of the LBA-NAND memory according to this embodiment.

本実施形態のLBA−NANDメモリ20は、コマンドによりアクセスの切り換えが可能な複数のデータ領域(論理ブロックアクセス領域)を持つ。具体的にこの実施の形態では、用途とデータの信頼性により分けられる2つ又は3つのデータ記憶領域がある。   The LBA-NAND memory 20 of the present embodiment has a plurality of data areas (logical block access areas) whose access can be switched by a command. Specifically, in this embodiment, there are two or three data storage areas that are divided according to use and data reliability.

図3(a)に示すスタンダードオペレーションモードでは、それぞれが特性の異なる情報を記憶する2つのデータ記憶領域を有する。1つはSLC(Single Level Cell)を用いた2値データ記憶領域SDA(SLC Data Area)であり、もう一つはMLC(Multi Level Cell)を用いた多値データ記憶領域MDA(MLC Data Area)である。2値データ記憶領域SDAは、ファイルシステム又はネットワーク通信のログデータ等を記憶するのに適し、多値データ記憶領域MDAは、音楽、画像、各種アプリケーション等を記憶するのに適している。   In the standard operation mode shown in FIG. 3A, each has two data storage areas for storing information having different characteristics. One is a binary data storage area SDA (SLC Data Area) using SLC (Single Level Cell), and the other is a multi-value data storage area MDA (MLC Data Area) using MLC (Multi Level Cell). It is. The binary data storage area SDA is suitable for storing log data of a file system or network communication, and the multi-value data storage area MDA is suitable for storing music, images, various applications, and the like.

図3(b)に示すオプショナルパワーオンモードでは、上記特性の異なる情報を記憶する2つのデータ記憶領域SDA,MDAに加えて、ブートコードを記憶するブートコードブロックがメモリ領域の先頭に設けられる。   In the optional power-on mode shown in FIG. 3B, in addition to the two data storage areas SDA and MDA that store information having different characteristics, a boot code block that stores a boot code is provided at the head of the memory area.

これら2つのモードにおいて、2値データ記憶領域SDAと多値データ記憶領域MDAの境界は、コマンドの指示によって任意に変更可能となっている。例えば、MLC(4値)をSLC(2値)としても使用可能なメモリセルアレイを用い、メモリ領域全てをMLCとして使用した場合の記憶容量が4GBであるメモリにおいて、図4に示すように、2値データ記憶領域SDAの記憶容量を、0MB,50MB,500MB及び1GBにそれぞれ設定した場合、多値データ記憶領域MDAの記憶容量は、それぞれ4GB,3.9GB,3GB及び2GBになる。   In these two modes, the boundary between the binary data storage area SDA and the multi-value data storage area MDA can be arbitrarily changed by an instruction of a command. For example, in a memory having a memory capacity of 4 GB when a memory cell array that can use MLC (4 values) as SLC (2 values) is used and the entire memory area is used as MLC, as shown in FIG. When the storage capacity of the value data storage area SDA is set to 0 MB, 50 MB, 500 MB, and 1 GB, the storage capacity of the multi-value data storage area MDA is 4 GB, 3.9 GB, 3 GB, and 2 GB, respectively.

図5は、2値データ記憶領域SDAのセットアップのタイミングチャートである。   FIG. 5 is a timing chart for setting up the binary data storage area SDA.

ここで、CLEはコマンド・ラッチ・イネーブル、CEはチップ・イネーブル、WEはライト・イネーブル、ALEはアドレス・ラッチ・イネーブル、REはリード・イネーブル、RY/BYはReady/Busyの各制御信号を示している。コマンド入力のタイミングで、リードSDAコマンド“00h”を読み込み、続いてアドレス・ラッチの5サイクルで、セットSDAコマンド“A5h”及びアロケーション・ユニット1st,2nd,3rd,4thを順次入力する。アロケーション・ユニットは、例えば図6に示すように、2値データ記憶領域SDAの境界位置を指定する。これにより、メモリコントローラ22に、SDAとMDAとの境界エリアが設定されるので、以後の論理アドレスと物理アドレスの変換処理は、設定された境界エリアに基づいて実行される。 Here, CLE is a command latch enable, CE is a chip enable, WE is a write enable, ALE is an address latch enable, RE is a read enable, and RY / BY is a ready / busy control signal. ing. Read SDA command “00h” is read at the command input timing, and then set SDA command “A5h” and allocation units 1 st , 2 nd , 3 rd , 4 th are sequentially input in five cycles of the address latch. . The allocation unit specifies the boundary position of the binary data storage area SDA as shown in FIG. 6, for example. As a result, since the boundary area between the SDA and the MDA is set in the memory controller 22, the subsequent logical address / physical address conversion processing is executed based on the set boundary area.

図7は、2値データ記憶領域SDAのサイズ確認のタイミングチャートである。   FIG. 7 is a timing chart for checking the size of the binary data storage area SDA.

コマンド入力のタイミングで、リードSDAコマンド“00h”を読み込み、続いてアドレス・ラッチの5サイクルで、ゲットSDAユニットコマンド“B5h”及び4バイトのダミーデータを順次入力する。これにより、SDAの境界エリアがコントローラ22から読み出される。   The read SDA command “00h” is read at the command input timing, and then the get SDA unit command “B5h” and 4-byte dummy data are sequentially input in five cycles of the address latch. As a result, the boundary area of the SDA is read from the controller 22.

図8は、多値データ記憶領域MDAのサイズ確認のタイミングチャートである。   FIG. 8 is a timing chart for confirming the size of the multi-value data storage area MDA.

コマンド入力のタイミングで、リードSDAコマンド“00h”を読み込み、続いてアドレス・ラッチの5サイクルで、ゲットMDAユニットコマンド“B0h”及び4バイトのダミーデータを順次入力する。これにより、MDAの境界エリアがコントローラ22から読み出される。   The read SDA command “00h” is read at the command input timing, and then the get MDA unit command “B0h” and 4-byte dummy data are sequentially input in five cycles of the address latch. As a result, the boundary area of the MDA is read from the controller 22.

[アクセスモード]
スタンダードオペレーションでは、LBAアクセスモードとなる。すなわち、 NAND型フラッシュメモリでは、メモリアドレスが物理アドレスであるページアドレスとコラムアドレスで与えられるが、LBAアクセスモードでは、ハードディスクに対するアクセスと同様、メモリアドレスが論理アドレスであるセクタアドレスとセクタ数によって与えられる。論理アドレスから物理アドレスへは、メモリコントローラ22によって変換される。図9には、このアクセスモードでのシーケンスが示されている。
[Access mode]
In standard operation, the LBA access mode is set. That is, in the NAND flash memory, the memory address is given by a page address and a column address which are physical addresses, but in the LBA access mode, the memory address is given by a sector address and a number of sectors which are logical addresses as in the access to the hard disk. It is done. The logical address is converted into a physical address by the memory controller 22. FIG. 9 shows a sequence in this access mode.

リード時には、図9(a)に示すように、まず、リードSDAコマンド “00h”かリードMDAコマンド“0Ah”を与える。“00h”は2値データ記憶領域SDAへのリードであることを示し、“0Ah”は多値データ記憶領域MDAへのリードであることを示している。続いて、5サイクルをかけて、セクタ数(下位8ビット)、セクタ数(上位8ビット)、セクタアドレス(下位8ビット)、セクタアドレス(中間8ビット)及びセクタアドレス(上位8ビット)の順にアドレスを入力する。次に、読み出しコマンドであることを示すコード“30h”を入力する。これにより、メモリコントローラ22が論理アドレスを物理アドレスに変換し、変換された物理アドレスがNANDフラッシュメモリ21内のアドレスレジスタに格納されてロウデコーダ2及びカラムデコーダ(図示せず)によってメモリセルアレイ1がアクセスされ、指定されたデータが読み出される。以後は、同様にリードコマンド“0xh”が入力されるが、アドレスとしてセクタアドレスとセクタ数を与えているので、以後のアクセスは、指定されたセクタ数が全て読み出されるまでメモリコントローラ22でアドレスを連続的に更新すればよい。このため、図9(a)のリードシーケンスでは、以後のアドレス指定のサイクルにダミーのアドレスを与えて、内部で生成された物理アドレスでアクセスを行うようにしている。なお、このように2回目以降のアクセスにダミーアドレス及び読み出しコマンド“30h”を与える代わりに、継続コマンド“F8h”を与え、この継続コマンドによってアドレスの更新及び読み出しコマンドの発生を行うようにしても良い。   At the time of reading, as shown in FIG. 9A, first, a read SDA command “00h” or a read MDA command “0Ah” is given. “00h” indicates a read to the binary data storage area SDA, and “0Ah” indicates a read to the multi-value data storage area MDA. Subsequently, over 5 cycles, the number of sectors (lower 8 bits), the number of sectors (upper 8 bits), sector address (lower 8 bits), sector address (intermediate 8 bits), and sector address (upper 8 bits) Enter the address. Next, a code “30h” indicating a read command is input. As a result, the memory controller 22 converts the logical address into a physical address, the converted physical address is stored in the address register in the NAND flash memory 21, and the memory cell array 1 is read by the row decoder 2 and the column decoder (not shown). Accessed and specified data is read. Thereafter, the read command “0xh” is similarly input, but since the sector address and the number of sectors are given as addresses, the subsequent access is performed by the memory controller 22 until the designated number of sectors is read out. What is necessary is just to update continuously. For this reason, in the read sequence of FIG. 9A, a dummy address is given to the subsequent addressing cycle, and access is performed using the internally generated physical address. Note that instead of giving the dummy address and the read command “30h” for the second and subsequent accesses, the continuation command “F8h” is given, and the address update and the generation of the read command are performed by this continuation command. good.

ライト時には、図9(b)に示すように、まず、オート・プログラム・コマンドとして“80h”か“8Ah”を与える。“80h”は2値データ記憶領域SDAへのライトであることを示し、“8Ah”は多値データ記憶領域MDAへのライトであることを示している。続いて、5サイクルをかけて、セクタ数(下位8ビット)、セクタ数(上位8ビット)、セクタアドレス(下位8ビット)、セクタアドレス(中間8ビット)及びセクタアドレス(上位8ビット)の順にアドレスを入力する。続いて書き込みデータを入力した後、書き込みコマンドであることを示すコード“10h”を入力する。これにより、メモリコントローラ22が論理アドレスを物理アドレスに変換し、変換された物理アドレスによってメモリセルアレイ1にデータが書き込まれる。   At the time of writing, as shown in FIG. 9B, first, “80h” or “8Ah” is given as an auto program command. “80h” indicates writing to the binary data storage area SDA, and “8Ah” indicates writing to the multi-value data storage area MDA. Subsequently, over 5 cycles, the number of sectors (lower 8 bits), the number of sectors (upper 8 bits), sector address (lower 8 bits), sector address (intermediate 8 bits), and sector address (upper 8 bits) Enter the address. Subsequently, after inputting write data, a code “10h” indicating a write command is input. Thereby, the memory controller 22 converts the logical address into a physical address, and data is written into the memory cell array 1 by the converted physical address.

一方、本実施形態に係るLBA−NANDメモリは、NANDアクセスモードも備えている。図10には、NANDアクセスモードでのシーケンスが示されている。   On the other hand, the LBA-NAND memory according to the present embodiment also has a NAND access mode. FIG. 10 shows a sequence in the NAND access mode.

NANDアクセスモードでは、5サイクルでカラムアドレス(下位8ビット)、カラムアドレス(上位8ビット)、ページアドレス(下位8ビット)、ページアドレス(中間8ビット)及びページアドレス(上位8ビット)の順にアドレスが与えられる点を除き、LBAアクセスモードと同じである。このNANDアクセスモードは、既存のNANDフラッシュメモリのアクセスと同様で、本実施形態のLBA−NANDメモリを物理アドレスでアクセスする必要がある用途で使用される。   In the NAND access mode, the address in the order of column address (lower 8 bits), column address (upper 8 bits), page address (lower 8 bits), page address (middle 8 bits), and page address (upper 8 bits) in 5 cycles. Is the same as the LBA access mode. This NAND access mode is the same as the access of the existing NAND flash memory, and is used in applications where it is necessary to access the LBA-NAND memory of this embodiment with a physical address.

[アクセスモードの切り換え]
次に、これらのアクセスモードの切り換えについて説明する。
[Switch access mode]
Next, switching of these access modes will be described.

図11は、スタンダードオペレーションモード時のフローを示している。パワーオンしてメモリコントローラ22がブートした後は、LBAアクセスモードとなり、パワーダウンコマンドが入力されてパワーオフになるまでこれが続く。   FIG. 11 shows a flow in the standard operation mode. After power-on and the memory controller 22 boots, the LBA access mode is entered, and this continues until a power-down command is input to power off.

一方、図12は、オプショナルパワーオンモード時のフローを示している。パワーオンしてメモリコントローラ2がブートした後は、NANDアクセスモードとなり、メモリ領域の最初に設けたブートコードブロックをアクセスする。その後、切り換えコマンド(Set_Transfer_Protocol)でLBAアクセスモードに切り替わり、再び切り換えコマンド(Set_Transfer_Protocol)でNANDアクセスモードに切り替わる。以後、パワーオフするまでこれを適宜繰り返す。   On the other hand, FIG. 12 shows a flow in the optional power-on mode. After power-on and the memory controller 2 boots, the NAND access mode is entered, and the boot code block provided at the beginning of the memory area is accessed. Thereafter, the switching command (Set_Transfer_Protocol) switches to the LBA access mode, and the switching command (Set_Transfer_Protocol) switches to the NAND access mode again. Thereafter, this is repeated as appropriate until the power is turned off.

このオプショナルパワーオンモードによれば、NANDアクセスモードを備えているため、ブートアップ時にNAND単体と同じアドレスシーケンスしか発行できないシステムでも、支障なくアクセスが可能である。また、コマンドによってNANDアクセスモードとLBAアクセスモードとを適宜切り換え可能であるため、外部システムに対して柔軟な対応が可能である。更に、パワーオン後に最初にNANDアクセスモードとなるので、ブートコードブロックのアクセスのために再起動する必要がない。   According to this optional power-on mode, since the NAND access mode is provided, even a system that can issue only the same address sequence as that of the NAND alone at the time of boot-up can be accessed without any trouble. In addition, since the NAND access mode and the LBA access mode can be appropriately switched by a command, it is possible to flexibly cope with an external system. Further, since the NAND access mode is first set after power-on, it is not necessary to restart for accessing the boot code block.

なお、上記スタンダードオペレーションモードとオプショナルパワーオンモードとは、何らかのスイッチ、コマンドにより切換可能にしても良いし、パワーオン毎にモードが切り替わるようにしても良い。   Note that the standard operation mode and the optional power-on mode may be switched by some kind of switch or command, or the mode may be switched at every power-on.

ところで、上記のシーケンスでは、図13に示すように、パワーオンの後、メモリコントローラ22がブートするまでの一定期間、ダミーIDを出力できるようにしている。すなわち、コントローラ22を内蔵するLBA−NANDメモリ20では、パワーオン・リセットのBusy期間が長くなる可能性があり、Busy期間が終了するまでは、外部からのID Read要求に応答することができない。このため、ID Read要求を出力したシステムが、何らかのデータが返らないとエラーになるようなシステムの場合、システムブートに不具合を生じる可能性がある。このため、本実施形態では、ブート期間中にID Read要求が受け付けられたら、コントローラ22から強制的にダミーIDを出力するハードウェアを備えている。   By the way, in the above sequence, as shown in FIG. 13, after the power is turned on, the dummy ID can be output for a certain period until the memory controller 22 boots. That is, in the LBA-NAND memory 20 with the built-in controller 22, the power-on reset busy period may become long, and it is impossible to respond to an external ID read request until the busy period ends. For this reason, in the case where the system that outputs the ID Read request is an error if no data is returned, there is a possibility that a problem occurs in the system boot. For this reason, the present embodiment includes hardware that forcibly outputs a dummy ID from the controller 22 when an ID Read request is received during the boot period.

[ステータスリード]
上述したNANDアクセスモードの場合、アドレス指定がアドレス領域を超えることは無いが、LBAアクセスモードの場合、論理/物理アドレス変換をメモリ内部のコントローラ22で行うため、セクタアドレス及びセクタ数の指定を間違えると、変換後の物理アドレスがアドレス領域を超えてしまうことが起こり得る。このため、本実施の形態では、ホストシステムから指定されたセクタアドレス及びセクタ数によって変換された物理アドレスが、フラッシュメモリ21のアドレス領域を超えた場合には、ステータス読み出しによってアドレス領域エラーを通知するようにしている。
[Status Read]
In the NAND access mode described above, the address designation does not exceed the address area. However, in the LBA access mode, the logical / physical address conversion is performed by the controller 22 in the memory, so the sector address and the number of sectors are wrongly designated. Then, the physical address after translation may exceed the address area. For this reason, in this embodiment, when the physical address converted by the sector address and the number of sectors designated by the host system exceeds the address area of the flash memory 21, an address area error is notified by reading the status. I am doing so.

図14は、ステータスリードを伴うLBAアクセスのタイミングチャートである。   FIG. 14 is a timing chart of LBA access with status read.

まず、ホストシステムからメモリ20へライト又はリードのコマンドを入力し、引き続き例えば5サイクルでアドレスを入力する。続いてホストシステムからメモリ20へステータスリードのコマンドを入力する。メモリコントローラ22では、これに応答して内部で論理アドレスから変換された物理アドレスがフラッシュメモリ21のアドレス領域を逸脱しているかどうかを判定する。もし、アドレス領域内であれば、「アドレス領域エラー無し」をステータスとして通知し、もしアドレス領域を超えていたら「アドレス領域エラー」をステータスとして通知する。これにより、ホストシステム側で誤ったアドレスを付与したことが分かり、不具合の解析対応が容易になる。   First, a write or read command is input from the host system to the memory 20, and an address is subsequently input in, for example, five cycles. Subsequently, a status read command is input from the host system to the memory 20. In response to this, the memory controller 22 determines whether the internal physical address converted from the logical address deviates from the address area of the flash memory 21. If it is within the address area, “no address area error” is notified as the status, and if it exceeds the address area, “address area error” is notified as the status. As a result, it can be seen that an incorrect address is given on the host system side, and it becomes easy to deal with the problem analysis.

[データ構造]
図15は、本実施形態のLBA−NANDメモリで使用されるデータの構造を示している。
[data structure]
FIG. 15 shows a data structure used in the LBA-NAND memory of this embodiment.

2値データ記憶領域SDA及び多値データ記憶領域MDA共に、セクタ・マルチプルが1(SM=1)の場合、読み出し及び書き込みとも、図示のデータフォーマットの512Byte(データ本体)と、16Byte(冗長データ)の計528Byteを転送単位とする。   In the binary data storage area SDA and the multi-value data storage area MDA, when the sector multiple is 1 (SM = 1), both reading and writing have the data format of 512 bytes (data body) and 16 bytes (redundant data). A total of 528 bytes is used as a transfer unit.

読み出しデータの16Byteの冗長データのフォーマットは、ホストシステムからのコンフィグレーション・コマンドによって幾つかのフォーマットタイプの中から選択することができる。例えば、Type aをスマート・メディア・フォーマットとし、Type bをECCのPass/Fail結果出力とし、Type cをAll 1データとし、これらの中から一つをコマンドによって選択可能にすることができる。これらの冗長データは、読み出し時にLBA−NANDメモリ20内のメモリコントローラ22内で生成されて読み出される。   The format of 16-byte redundant data of read data can be selected from among several format types by a configuration command from the host system. For example, Type a can be a smart media format, Type b can be an ECC Pass / Fail result output, Type c can be All 1 data, and one of these can be selected by a command. These redundant data are generated and read in the memory controller 22 in the LBA-NAND memory 20 at the time of reading.

書き込みデータについては、16Byteの冗長データがダミーデータとなる。転送された528Byteのデータのうち、NAND型フラッシュフラッシュメモリ21に格納されるのは、512Byteである。LBA−NANDメモリ22内では転送されたデータのうち、拡張16バイトを削除し、内部で書き込みデータに合わせたECCコードを生成して、これが書き込みデータと共にフラッシュメモリ22に記憶される。   For write data, 16-byte redundant data is dummy data. Of the transferred 528 bytes of data, 512 bytes are stored in the NAND flash flash memory 21. In the LBA-NAND memory 22, the extended 16 bytes are deleted from the transferred data, and an ECC code matching the write data is generated internally, and this is stored in the flash memory 22 together with the write data.

なお、ECCデータは、LBA−NANDメモリ20内のメモリコントローラ22が生成する。 ECCデータで転送されたデータの正しさを確認するのは、書き込み時はLBA−NANDメモリ20内のメモリコントローラ22であり、読み出し時はホストシステムである。   The ECC data is generated by the memory controller 22 in the LBA-NAND memory 20. It is the memory controller 22 in the LBA-NAND memory 20 at the time of writing and the host system at the time of reading that confirms the correctness of the data transferred by the ECC data.

16Byteの冗長データを省いた512Byteを転送単位とする読み出し/書き込みもできる。これらは、データ構成の変更、切り換えを指示するためのコンフィグレーション・コマンドによる切り換えは不要である。   It is also possible to read / write data with 512 bytes without 16-byte redundant data as a transfer unit. These do not require switching by a configuration command for instructing the change or switching of the data structure.

セクタ・マルチプルSM=4とすることにより、データ転送単位を2112Byteとすることができる。これは、SM=1のデータフォーマットを4回繰り返すことになる。Type2とType3とは、16Byteの冗長データが528Byteの各データ転送単位内に記録されているか、64Byte分最後にまとめて記録されているかの違いである。   By setting sector multiple SM = 4, the data transfer unit can be 2112 bytes. This means that the data format of SM = 1 is repeated four times. Type 2 and Type 3 are differences in whether 16-byte redundant data is recorded in each data transfer unit of 528 bytes or is collectively recorded at the end of 64 bytes.

なお、本発明は上述した実施形態に限定されるものではない。例えば、上記実施形態では、フラッシュメモリとしてNAND型を使用しているが、NOR型他の形式のメモリを用いても良い。   In addition, this invention is not limited to embodiment mentioned above. For example, in the above embodiment, the NAND type is used as the flash memory, but a NOR type other type of memory may be used.

この発明の一実施の形態によるLBA−NANDメモリシステム構成を示す図である。1 is a diagram showing a configuration of an LBA-NAND memory system according to an embodiment of the present invention. 同LBA−NANDメモリのメモリセルアレイ構成を示す図である。It is a figure which shows the memory cell array structure of the same LBA-NAND memory. 同LBA−NANDメモリのデータ記憶領域を示す図である。It is a figure which shows the data storage area of the LBA-NAND memory. 同LBA−NANDメモリの各種データ記憶量の例を示す図である。It is a figure which shows the example of the various data storage amount of the LBA-NAND memory. 同LBA−NANDメモリの2値データ記憶領域SDAのセットアップ手順を示すタイミングチャートである。It is a timing chart which shows the setup procedure of the binary data storage area SDA of the LBA-NAND memory. 同LBA−NANDメモリのデータ記憶領域設定例を示す図である。It is a figure which shows the example of a data storage area setting of the LBA-NAND memory. 同LBA−NANDメモリの2値データ記憶領域確認手順を示すタイミングチャートである。It is a timing chart which shows the binary data storage area confirmation procedure of the LBA-NAND memory. 同LBA−NANDメモリの多値データ記憶領域確認手順を示すタイミングチャートである。It is a timing chart which shows the multi-value data storage area confirmation procedure of the LBA-NAND memory. 同LBA−NANDメモリのLBAアクセスモードでのリード・ライトシーケンスを示す図である。It is a figure which shows the read / write sequence in the LBA access mode of the same LBA-NAND memory. 同LBA−NANDメモリのNANDアクセスモードでのリード・ライトシーケンスを示す図である。It is a figure which shows the read / write sequence in NAND access mode of the same LBA-NAND memory. 同LBA−NANDメモリのスタンダードオペレーションモードでのアクセス手順を示すフローチャートである。It is a flowchart which shows the access procedure in the standard operation mode of the LBA-NAND memory. 同LBA−NANDメモリのオプショナルパワーオンモードでのアクセス手順を示すフローチャートである。It is a flowchart which shows the access procedure in the optional power-on mode of the same LBA-NAND memory. 同LBA−NANDメモリのパワーオン時のタイミングチャートである。4 is a timing chart when the LBA-NAND memory is powered on. 同LBA−NANDメモリのアドレス領域エラー通知機能を説明するためのタイミングチャートである。It is a timing chart for demonstrating the address area error notification function of the same LBA-NAND memory. 同LBA−NANDメモリで使用されるデータフォーマットを示す図である。It is a figure which shows the data format used with the LBA-NAND memory.

符号の説明Explanation of symbols

1…メモリセルアレイ、2…ロウデコーダ、3…センスアンプ回路、20…LBA−NANDメモリ、21…NANDフラッシュメモリ、22…メモリコントローラ、23…NANDフラッシュインタフェース、24…MPU、25…ホストインタフェース、26…バッファRAM、27…ハードウェアシーケンサ。   DESCRIPTION OF SYMBOLS 1 ... Memory cell array, 2 ... Row decoder, 3 ... Sense amplifier circuit, 20 ... LBA-NAND memory, 21 ... NAND flash memory, 22 ... Memory controller, 23 ... NAND flash interface, 24 ... MPU, 25 ... Host interface, 26 ... buffer RAM, 27 ... hardware sequencer.

Claims (5)

データを記憶するメモリ部と、
ホストデバイスから供給された論理アドレスを前記メモリ部の物理アドレスに変換する機能を有し、前記メモリ部の読み出し及び書き込みを制御するメモリコントローラと、
を備え、
前記メモリコントローラは、前記メモリ部から読み出されるデータのうちのデータ本体から冗長データを作成し、前記データ本体に付加して外部に出力するものであり、
前記冗長データのフォーマットは、前記メモリコントローラによって選択された複数種類のフォーマットのうちの一つである
ことを特徴とする半導体記憶装置。
A memory unit for storing data;
A memory controller that has a function of converting a logical address supplied from a host device into a physical address of the memory unit, and controls reading and writing of the memory unit;
With
The memory controller creates redundant data from the data body of the data read from the memory unit, adds the data to the data body, and outputs the data to the outside.
The format of the redundant data is one of a plurality of types of formats selected by the memory controller.
前記メモリコントローラは、外部からのコマンドによって前記冗長データのフォーマットを決定するものであることを特徴とする請求項1記載の半導体記憶装置。   2. The semiconductor memory device according to claim 1, wherein the memory controller determines a format of the redundant data by an external command. 前記メモリコントローラは、前記メモリ部からデータを読み出して、外部から入力されたコマンドによって指定されたフォーマットで冗長データを作成し、この冗長データをデータ本体に付加して外部に出力することを特徴とする請求項1又は2記載の半導体記憶装置。   The memory controller reads data from the memory unit, creates redundant data in a format specified by an externally input command, adds the redundant data to a data body, and outputs the data to the outside. The semiconductor memory device according to claim 1 or 2. 前記メモリコントローラは、前記メモリ部からデータを読み出して、データ本体からECCコードを作成し、これを冗長データの少なくとも一部に付加して、データ本体と共に外部に出力することを特徴とする請求項1〜3のいずれか1項記載の半導体記憶装置。   The memory controller reads data from the memory unit, creates an ECC code from the data body, adds the ECC code to at least a part of the redundant data, and outputs it to the outside together with the data body. The semiconductor memory device according to any one of 1 to 3. 前記メモリコントローラは、前記外部から入力されたデータ本体及び冗長データを含むデータのうちの冗長データを削除してデータ本体からECCコードを作成し、このECCコードを前記データ本体と共に前記メモリ部に書き込むことを特徴とする請求項1〜4のいずれか1項記載の半導体記憶装置。   The memory controller creates an ECC code from the data body by deleting redundant data from data including the data body and redundant data input from the outside, and writes the ECC code together with the data body in the memory unit 5. The semiconductor memory device according to claim 1, wherein:
JP2007161748A 2007-06-19 2007-06-19 Semiconductor memory device Withdrawn JP2009003994A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007161748A JP2009003994A (en) 2007-06-19 2007-06-19 Semiconductor memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007161748A JP2009003994A (en) 2007-06-19 2007-06-19 Semiconductor memory device

Publications (1)

Publication Number Publication Date
JP2009003994A true JP2009003994A (en) 2009-01-08

Family

ID=40320226

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007161748A Withdrawn JP2009003994A (en) 2007-06-19 2007-06-19 Semiconductor memory device

Country Status (1)

Country Link
JP (1) JP2009003994A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012505458A (en) * 2008-10-09 2012-03-01 ヌモニクス ベー. フェー. Virtualized ECC-NAND
JP2014238871A (en) * 2014-08-01 2014-12-18 マイクロン テクノロジー, インク. Controller providing single virtualized ecc algorithm, storage system including this controller, and method of managing this storage system

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012505458A (en) * 2008-10-09 2012-03-01 ヌモニクス ベー. フェー. Virtualized ECC-NAND
US8806293B2 (en) 2008-10-09 2014-08-12 Micron Technology, Inc. Controller to execute error correcting code algorithms and manage NAND memories
US9213603B2 (en) 2008-10-09 2015-12-15 Micron Technology, Inc. Controller to manage NAND memories
US9569129B2 (en) 2008-10-09 2017-02-14 Micron Technology, Inc. Controller to manage NAND memories
US9971536B2 (en) 2008-10-09 2018-05-15 Micron Technology, Inc. Controller to manage NAND memories
JP2014238871A (en) * 2014-08-01 2014-12-18 マイクロン テクノロジー, インク. Controller providing single virtualized ecc algorithm, storage system including this controller, and method of managing this storage system

Similar Documents

Publication Publication Date Title
US11150808B2 (en) Flash memory system
US6266273B1 (en) Method and structure for reliable data copy operation for non-volatile memories
JP5002201B2 (en) Memory system
KR100939146B1 (en) Non-volatile semiconductor memory system and data write method thereof
JP4746598B2 (en) Semiconductor memory device
US7974139B2 (en) Non-volatile memory generating different read voltages
US7885141B2 (en) Non-volatile memory device and method for setting configuration information thereof
KR20070110264A (en) Data relocation in a memory system
JP2009003569A (en) Semiconductor memory
US10503433B2 (en) Memory management method, memory control circuit unit and memory storage device
JP5166118B2 (en) Method for controlling semiconductor memory
US20140173173A1 (en) Method, device, and system including configurable bit-per-cell capability
JP4373943B2 (en) Memory controller, flash memory system, and flash memory control method
US11487655B2 (en) Method for managing flash memory module and associated flash memory controller and electronic device based on timing of dummy read operations
JP2009003995A (en) Semiconductor memory device
JP2009003994A (en) Semiconductor memory device
KR20190047391A (en) Nonvolatile memory device configured to be accessed without block address and method of operating the same
JP2009003571A (en) Semiconductor memory
JP2009043110A (en) Semiconductor storage device
JP4697146B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM HAVING MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD
JP2009003570A (en) Semiconductor memory
KR20210028335A (en) Memory system, memory controller, and operating method
EP3783614B1 (en) Nonvolatile memory device including a fast read page and a storage device including the same
JP2009163652A (en) Semiconductor memory device
CN106326131B (en) Memory management method, memory control circuit unit and memory storage 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: 20100907