JP4792062B2 - Memory card and controller mounted on the memory card - Google Patents
Memory card and controller mounted on the memory card Download PDFInfo
- Publication number
- JP4792062B2 JP4792062B2 JP2008151012A JP2008151012A JP4792062B2 JP 4792062 B2 JP4792062 B2 JP 4792062B2 JP 2008151012 A JP2008151012 A JP 2008151012A JP 2008151012 A JP2008151012 A JP 2008151012A JP 4792062 B2 JP4792062 B2 JP 4792062B2
- Authority
- JP
- Japan
- Prior art keywords
- user data
- command
- area
- data
- block
- 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.)
- Active
Links
Images
Description
本発明は、メモリカードおよびメモリカードに搭載されるコントローラに関するもので、特に、フラッシュメモリなどの不揮発性の半導体メモリを用いたメモリカードの制御方法に関する。 The present invention relates to a memory card and a controller mounted on the memory card, and more particularly to a memory card control method using a nonvolatile semiconductor memory such as a flash memory.
通常、メモリカードをフォーマットする場合、ファイル管理情報のみを初期化し、ファイル本体のデータ(たとえば、ユーザデータ)はそのままにしておくことが多い。この場合、ファイル本体のデータは消去されていないので、復元される可能性がある。したがって、ファイル管理情報だけではなく、ファイル本体のデータも消去した方が、機密保持上は望ましい。 Normally, when formatting a memory card, only file management information is initialized, and data in the file body (for example, user data) is often left as it is. In this case, the data in the file body is not erased and may be restored. Therefore, it is desirable for confidentiality to delete not only the file management information but also the data of the file body.
たとえば、従来のSDメモリカードには、指定されたブロック領域内のデータを消去するためのブロック消去コマンドが定義されている。しかしながら、従来のブロック消去コマンドはユーザデータ領域のブロック範囲を指定してデータの消去を行うものであり、ブロック範囲の指定が煩雑である、あるいは、代替メモリブロック領域のデータの消去が行えないという問題があった。 For example, a conventional SD memory card defines a block erase command for erasing data in a designated block area. However, the conventional block erase command is for erasing data by specifying the block range of the user data area, and the designation of the block range is complicated, or the data in the alternative memory block area cannot be erased. There was a problem.
また、メモリカードまたはフラッシュメモリにおいては、複数のブロック領域の各アドレスを指定して同時に消去するマルチブロック消去のためのコマンド(たとえば、特許文献1参照)や、先頭のブロック領域のアドレスとブロック領域の数(サイズ)とから連続する複数のブロック領域(消去の範囲)を指定して同時に消去する範囲指定消去のためのコマンド(たとえば、特許文献2参照)などが定義されているものもある。 Further, in a memory card or flash memory, a command for multi-block erasure (for example, refer to Patent Document 1) for simultaneously erasing by designating each address of a plurality of block areas, or the address and block area of a leading block area In some cases, a command (for example, refer to Patent Document 2) for defining a range for erasing at the same time by designating a plurality of continuous block areas (erasing range) from the number (size) is defined.
しかしながら、ファイル本体のデータを完全に消去するには、いずれの場合もホスト機器の操作が煩雑になるため、操作の効率化が求められていた。 However, in order to completely erase the data in the file body, the operation of the host device becomes complicated in any case, so that the operation efficiency has been demanded.
最近では、チップイレーズという機能を可能にするコマンドが定義されているフラッシュメモリもある(たとえば、特許文献3参照)。しかし、このチップイレーズコマンドの場合、ファイル本体のデータだけを消去することができず、フォーマットには適さないものであった。
本発明は、上記の問題点を解決すべくなされたもので、その目的は、煩雑な操作を必要とすることなく、データ管理情報を除く、ユーザデータを簡単に消去することができ、メモリカードの継続使用を可能にしつつ、機密保持が容易に可能なメモリカードおよびメモリカードに搭載されるコントローラを提供することにある。 The present invention has been made to solve the above-described problems, and its object is to easily delete user data excluding data management information without requiring a complicated operation, and a memory card. It is an object of the present invention to provide a memory card and a controller mounted on the memory card that can easily maintain confidentiality while enabling continuous use.
本願発明の一態様によれば、処理装置からの第1のコマンドを受け付ける第1のインタフェースと、データの消去が可能な不揮発性メモリチップに対し、前記第1のインタフェースにて受け付けた前記第1のコマンドに対応する第2のコマンドを出力する第2のインタフェースと、前記不揮発性メモリチップにおいてデータを保持可能な通常領域のうち、前記不揮発性メモリチップに含まれる複数の領域の位置情報を含む制御情報格納領域の制御情報を除き、ユーザデータを消去させるためのユーザデータイレーズコマンドを、前記第2のコマンドとして前記第2のインタフェースより出力する制御回路とを具備し、前記通常領域は、少なくとも前記制御情報格納領域、一般データ領域、及び該一般データ領域内のデータの引っ越し書き込みに使用するスペアブロックとしての代替ブロック領域を含み、前記ユーザデータイレーズコマンドによって、前記一般データ領域及び前記代替ブロック領域内のデータを含む前記ユーザデータの全てが消去されるコントローラが提供される。 According to one aspect of the present invention, a first interface that accepts a first command from a processing device and a non-volatile memory chip that can erase data, the first interface that is accepted by the first interface. the second interface and, among the non-volatile memory chip the normal area capable of holding Oite data, the location of more than one region contained in the nonvolatile memory chip to output the second command corresponding to the command except the control information in the control information storage area including, and a control circuit for the user data erase command for erasing user data, and outputs from the second interface as said second command, said normal region Is at least the control information storage area, the general data area, and the moving writing of data in the general data area It includes a replacement block area as a spare block used by the user data erase command, the controller that all of the user data including data of the general data area and the replacement block area is erased is provided.
上記の構成により、処理装置からの第1のコマンドの入力に応じて、少なくとも有効なユーザデータを消去するためのイレーズコマンドを自動的に生成できるようになる結果、煩雑な操作を必要とすることなく、データ管理情報を除く、ユーザデータを簡単に消去することができ、メモリカードの継続使用を可能にしつつ、機密保持が容易に可能なメモリカードおよびメモリカードに搭載されるコントローラを提供できる。 According to the above configuration, an erase command for erasing at least valid user data can be automatically generated in response to the input of the first command from the processing device, resulting in a complicated operation. In addition, user data excluding data management information can be easily deleted, and a memory card and a controller mounted on the memory card can be provided which can easily maintain confidentiality while allowing continuous use of the memory card.
以下、本発明の実施の形態について図面を参照して説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[第1の実施形態]
図1は、この発明の第1の実施形態にしたがった、メモリカードとその処理装置とを示すものである。なお、ここでは、メモリカードがSD(Secure Digital)メモリカードであり、処理装置がデジタルカメラである場合を例に説明する。
[First Embodiment]
FIG. 1 shows a memory card and its processing device according to a first embodiment of the present invention. Here, a case where the memory card is an SD (Secure Digital) memory card and the processing device is a digital camera will be described as an example.
ホスト機器であるデジタルカメラ100のボディ101には、SDメモリカード200が装着されるスロット103が設けられている。また、上記ボディ101内には、ホスト側コントローラ105が設けられている。
The body 101 of the digital camera 100 as a host device is provided with a slot 103 in which the
ホスト側コントローラ105は、装着されるSDメモリカード200にアクセスするための機能を備えている。つまり、ホスト側コントローラ105は、上記SDメモリカード200に対するユーザデータ(この例の場合、デジタル画像)の書き込みおよび読み出しを制御する。また、ホスト側コントローラ105は、たとえばSDメモリカード200をフォーマットする際に、SDメモリカード200に対して、ユーザデータ消去コマンド(第1のコマンド)を発行する。このユーザデータ消去コマンドは、たとえば、ユーザデータをファイル本体のデータとした場合のファイル管理情報の初期化とともに、すべてのユーザデータを完全に消去するためのシリアルな信号である。なお、ホスト側コントローラ105は、デジタル画像を撮影したり表示したりするための機能を備えていてもよいし、ホスト側コントローラ105とは異なるチップのプロセッサでそのような処理をするようにしてもよい。
The host-
図2は、上記したSDメモリカード200の基本構成を示すものである。なお、ここでは、フラッシュメモリが、1つのNAND型フラッシュメモリ(第1のNAND型フラッシュメモリ)からなる場合について説明する。
FIG. 2 shows a basic configuration of the
SDメモリカード200は、デジタルカメラ100のスロット103に装着されることにより電源の供給を受けて動作し、ホスト側コントローラ105からのアクセスに応じた処理を行う。すなわち、SDメモリカード200は、PCB(Printed Circuit Board)基板上に実装された、NAND型フラッシュメモリ210およびカード側コントローラ220を有している。
When the
NAND型フラッシュメモリ210は、たとえば、通常の消去がブロック(複数ページ)単位で行われる不揮発性の半導体メモリである。また、このNAND型フラッシュメモリ210は、たとえば、ページと称する単位で、データの書き込みおよび読み出しが行われるようになっている。そして、本実施形態のNAND型フラッシュメモリ210はユーザデータイレーズという機能を備えており、すべてのユーザデータ(たとえば、ユーザデータをファイル本体のデータとした場合のファイル管理情報を含む)を完全に消去することが可能となっている。なお、NAND型フラッシュメモリ210の詳細については後述する。
The
カード側コントローラ220は、NAND型フラッシュメモリ210内の物理状態を管理するものとして構築されている。たとえば、論理ブロックアドレスと物理ブロックアドレスとの対応を示す論理変換テーブルや、各物理ブロックが既にある論理ブロックに割り当てられているかを示すテーブルを保持する。このカード側コントローラ220には、制御回路となるCPU(Central Processing Unit)221、第2のインタフェースであるフラッシュメモリインタフェース(I/F)222、第1のインタフェースであるホストインタフェース(I/F)223、バッファRAM(Random Access Memory)224、および、レジスタとしてのSRAM(Static RAM)225が搭載されている。
The
フラッシュメモリインタフェース222は、カード側コントローラ220とNAND型フラッシュメモリ210との間のインタフェース処理を行うものである。フラッシュメモリインタフェース222とNAND型フラッシュメモリ210とは、各種の信号線(たとえば、電源Vdd、グランドVss、I/O、Ready・/Busy、コマンドラッチイネーブルCLE、アドレスラッチイネーブルALE、チップイネーブル/CE、リードイネーブル/RE、および、ライトイネーブル/WEなど)で接続されている。また、フラッシュメモリインタフェース222には、ECC(Error Checking & Correction Code)回路226が設けられている。なお、信号名の前にスラッシュ(/)が付されているのは、その信号がローアクティブであることを示す。たとえば、チップイネーブル/CEはローレベルの際にNAND型フラッシュメモリをイネーブルにする。
The
ホストインタフェース223は、カード側コントローラ220とホスト側コントローラ105との間のインタフェース処理を行うものである。ホストインタフェース223は、後述する複数の信号ピンを介して、各種の信号(たとえば、電源Vdd、グランドVss、データ、カード検出、クロック、および、コマンドなど)を入力または出力するようになっている。
The
バッファRAM224は、ホスト側コントローラ105から送られてくるデータをNAND型フラッシュメモリ210へ書き込む際に、一定量のデータ(たとえば、8ページ分)を一時的に記憶したり、NAND型フラッシュメモリ210から読み出されるデータをホスト側コントローラ105へ送り出す際に、一定量のデータを一時的に記憶したりするものである。また、バッファRAM224は、CPU221の作業エリアとしても使用される。
The
CPU221は、SDメモリカード200の全体的な動作を司るものである。CPU221は、たとえば、SDメモリカード200が電源供給を受けた際に、NAND型フラッシュメモリ210内に格納されているファームウェア(CPUを制御するためのプログラム)をSRAM225上にロードして所定の処理を実行することにより、各種のテーブルをバッファRAM224上に作成したり、ホスト側コントローラ105からの書き込みコマンド、読み出しコマンド、通常の消去コマンドを受けてNAND型フラッシュメモリ210上の所定の処理を実行したり、バッファRAM224を介したデータ転送処理を制御したりする。
The
なお、ファームウェアの全体、あるいは、一部をNAND型フラッシュメモリからSRAMにロードせず、コントローラ内に設けたROMに格納しておき、このROM上のプログラムを実行するようにすることも可能である。 Note that it is also possible to store the entire firmware or a part of the firmware in a ROM provided in the controller without loading it from the NAND flash memory to the SRAM and execute the program on the ROM. .
また、ホスト側コントローラ105からのユーザデータ消去コマンドを受けた場合、CPU221は、たとえば、NAND型フラッシュメモリ210に格納されている、ユーザデータをファイル本体のデータとした場合のファイル管理情報を含む、すべてのユーザデータの消去を可能にするためのユーザデータイレーズコマンド(第2のコマンド)を生成し、フラッシュメモリインタフェース222よりNAND型フラッシュメモリ210に出力する。
When receiving a user data deletion command from the host-
SRAM225は、CPU221により制御される制御プログラムや初期値などを格納するためのメモリである。
The SRAM 225 is a memory for storing a control program controlled by the
ECC回路226は、NAND型フラッシュメモリ210に書き込むデータ、および、NAND型フラッシュメモリ210から読み出したデータに対し、誤り訂正処理を施すものである。
The
図3は、上記NAND型フラッシュメモリ210の構成を示すものである。たとえば、NAND型フラッシュメモリ210内のメモリセルアレイ(メモリ領域)210aは、一般に、ROM(Read Only Memory)領域210bと通常領域210cとに分けられる。ROM領域210bは、NAND型フラッシュメモリ210を制御するのに必要な情報(たとえば、データのプログラミングや消去に利用する高電圧のトリミングに関する情報、リダンダンシ処理のためのアドレス情報およびNAND型フラッシュメモリ自体の制御プログラムなど)を記憶するための、ユーザおよびカード側コントローラ220が利用できない領域(非ユーザデータ領域)である。通常領域210cは、ユーザおよびカード側コントローラ220が利用可能なメモリ空間である。
FIG. 3 shows the configuration of the
上記通常領域210cは、たとえば、制御情報格納領域(非ユーザデータ領域)210dとユーザデータ領域210eとに分けられる。制御情報格納領域210dは、機密データ領域210gおよび管理データ領域210hを含んでいる。機密データ領域210gは機密データを格納するための領域であり、この領域210gには、たとえば、暗号化に用いる鍵情報や認証時に使用するカード固有の機密データ(SDメモリカード200のセキュリティ情報やメディアIDなど)が保存されている。管理データ領域210hは、主にSDメモリカード200に関する管理情報を格納するための領域であり、この領域210hには、たとえば、ファームウェア、ファームウェアを制御するための初期値データ、レジスタの初期値データ、NAND型フラッシュメモリ210の各領域の位置情報など(あるいはその一部)が格納されている。
The
ユーザデータ領域210eは、このSDメモリカード200を使用するユーザが自由にアクセスおよび利用することが可能な、ユーザデータ(この例の場合、デジタル画像をファイル本体のデータとした場合のファイル管理情報を含む)を格納するための領域であり、たとえば、保護データ領域210fと一般データ領域210iと代替ブロック領域210jとを備えている。保護データ領域210fは重要なデータを格納するための領域であり、たとえば、SDメモリカード200が装着されるデジタルカメラ100との相互認証により、デジタルカメラ100の正当性が証明された場合にのみアクセスが可能となる領域である。代替ブロック領域210jは、一般データ領域210iにおける不良セルをブロック単位で置換(リダンダント)するための領域である。また、代替ブロック領域210jは、フラッシュメモリ固有の引越し書き込みなどの際のスペアブロックとしても利用される。
The
ここで、上記NAND型フラッシュメモリ210は、データの書き込みおよび読み出しがページ(たとえば、2112Byteあるいは512Byte)という単位で行われる。また、通常の消去は、複数のページを含むブロック(たとえば、128kByteあるいは16kByte)という単位で行われる。さらに、フォーマット時には、たとえば、ユーザデータ領域210eの全ブロック領域のデータ、つまり、すべてのユーザデータを完全に消去することが可能となっている(所謂、ユーザデータイレーズ機能)。
Here, in the
さらに、本実施形態において使用されるNAND型フラッシュメモリ210は、たとえば、約90nm(ナノメートル)の配線幅を有する。あるいは、70nm未満の配線幅を有するものを使用することも可能である。NAND型フラッシュメモリ210の容量としては、たとえば、1つのチップで2GB(ギガビット)以上のものを使用することが可能である。このようなNAND型フラッシュメモリ210の場合、配線材料として、たとえばCu(銅)を含むものを使用することが可能である。
Furthermore, the
なお、SDメモリカード200に搭載されるNAND型フラッシュメモリ210は、たとえば、FATファイルシステムにより管理される。
The
また、上記NAND型フラッシュメモリ210としては、一つのメモリセルに1ビットの情報を記憶する2値メモリであってもよいし、一つのメモリセルに2ビット以上の情報を記憶する多値メモリであってもよい。さらに、上記NAND型フラッシュメモリ210および上記カード側コントローラ220は、同一のLSI(Large Scale Integrated Circuit)基板上に実装されていてもよい。
The
図4は、上記したSDメモリカード200の基本構成を示すものである。SDメモリカード200は、上記ホスト側コントローラ105とのコンタクト(通信)のための複数(この例の場合、ピンP1〜P9の9つ)の信号ピン230を備えている。各ピンP1〜P9は、ホストインタフェース223を介して、カード側コントローラ220と電気的に接続されている。
FIG. 4 shows a basic configuration of the
一例として、ピンP1は、データ信号(DAT3)用およびカード検出(CD)信号用として割り当てられている。ピンP2はコマンド(CMD)用、ピンP4は電源Vdd用、ピンP5はクロック信号(CLK)用として、それぞれ割り当てられている。ピンP3およびピンP6は、グランドVss用として割り当てられている。ピンP7,P8,P9は、それぞれ、データ信号(DAT0,1,2)用として割り当てられている。 As an example, pin P1 is assigned for a data signal (DAT3) and a card detection (CD) signal. Pin P2 is assigned for command (CMD), pin P4 is assigned for power supply Vdd, and pin P5 is assigned for clock signal (CLK). The pin P3 and the pin P6 are assigned for the ground Vss. Pins P7, P8, and P9 are assigned for data signals (DAT0, DAT1, 2), respectively.
図5は、上記したSDメモリカード200の、設定可能な動作モードとピンアサインとの関係を示すものである。本実施形態において、SDメモリカード200は3つの動作モード、たとえばSD4bitモード、SD1bitモード、および、SPIモードを備えている。すなわち、SDメモリカード200の動作モードは、SDモードとSPIモードとに大別される。SDモードの場合、デジタルカメラ100のホスト側コントローラ105からのバス幅変更コマンドによって、SDメモリカード200は、SD4bitモードまたはSD1bitモードに設定される。
FIG. 5 shows the relationship between the settable operation modes and pin assignments of the
ここで、4つのデータ信号用のピンP1(DAT3),P7(DAT0),P8(DAT1),P9(DAT2)に着目すると、4ビット幅単位でデータ転送を行うSD4bitモードでは、4つのデータ信号用のピンP1,P7,P8,P9のすべてがデータ転送に用いられる。一方、1ビット幅単位でデータ転送を行うSD1bitモードでは、データ信号用のピンP7のみがデータ転送に使用される。データ信号用のピンP8,P9についてはまったく使用されない。また、データ信号およびカード検出用のピンP1は、たとえば、SDメモリカード200からホスト側コントローラ105への非同期割り込みなどのために使用される。
Here, focusing on the four data signal pins P1 (DAT3), P7 (DAT0), P8 (DAT1), and P9 (DAT2), four data signals are used in the SD4bit mode in which data transfer is performed in units of 4 bits. All of the pins P1, P7, P8, and P9 are used for data transfer. On the other hand, in the SD1 bit mode in which data transfer is performed in units of 1-bit width, only the data signal pin P7 is used for data transfer. The data signal pins P8 and P9 are not used at all. The data signal and the card detection pin P1 are used for, for example, an asynchronous interrupt from the
SPIモードでは、データ信号用のピンP7が、SDメモリカード200からホスト側コントローラ105へのデータ信号線(DATA OUT)として用いられる。コマンド(CMD)用のピンP2は、ホスト側コントローラ105からSDメモリカード200へのデータ信号線(DATA IN)として用いられる。データ信号用のピンP8,P9については、まったく使用されない。
In the SPI mode, the data signal pin P7 is used as a data signal line (DATA OUT) from the
また、SPIモードでは、データ信号およびカード検出用のピンP1は、ホスト側コントローラ105からSDメモリカード200へのチップセレクト信号(CS)の送信に用いられる。
In the SPI mode, the data signal and the card detection pin P <b> 1 are used for transmitting a chip select signal (CS) from the host-
このような構成において、SDメモリカード200は、デジタルカメラ100のスロット103に装着されることにより、信号ピン230を介して、ホスト側コントローラ105との間の通信を行う。たとえば、SDメモリカード200のNAND型フラッシュメモリ210にデータを書き込む場合、カード側コントローラ220は、ホスト側コントローラ105からピンP5に与えられるクロック信号に同期させて、ピンP2に与えられる書き込みコマンドをシリアルな信号として取り込む。つまり、ホスト側コントローラ105からの各コマンドは、ピンP2のみを介して、カード側コントローラ220にシリアルに入力される。
In such a configuration, the
ここで、NAND型フラッシュメモリ210とカード側コントローラ220との間の通信について、さらに説明する。カード側コントローラ220は、たとえば8ビットのI/O線(I/O1〜I/O8)を介して、NAND型フラッシュメモリ210との間の通信を行う。たとえば、NAND型フラッシュメモリ210にデータを書き込む場合、カード側コントローラ220は、NAND型フラッシュメモリ210に対し、フラッシュメモリインタフェース222から、I/O1〜I/O8を介して、データ入力コマンド(80H)、カラムアドレス、ページアドレス、データ、および、プログラムコマンド(10H)を順に入力する。
Here, communication between the
ただし、上記コマンド(80H)の「H」は16進数を示すものであり、実際には、「10000000」という8ビットの信号がI/O1〜I/O8に与えられる。つまり、フラッシュメモリインタフェース222とは、複数ビットにより定義されるコマンドをパラレルに出力するものである。また、フラッシュメモリインタフェース222およびNAND型フラッシュメモリ210をつなぐI/O線は、コマンドとデータとで共有されている。
However, “H” in the command (80H) indicates a hexadecimal number, and actually an 8-bit signal “10000000” is given to I / O1 to I / O8. In other words, the
このように、デジタルカメラ100のホスト側コントローラ105とSDメモリカード200との間の通信を行うインタフェース(ホストインタフェース223)と、NAND型フラッシュメモリ210とカード側コントローラ220との間の通信を行うインタフェース(フラッシュメモリインタフェース222)とは、通信の方式が異なるものとなっている。
As described above, an interface (host interface 223) that performs communication between the host-
以下に、上記した構成におけるユーザデータイレーズ機能、つまり、デジタルカメラ100に装着されたSDメモリカード200の、NAND型フラッシュメモリ210に格納されているすべてのユーザデータを完全に消去する場合の方法について、いくつか説明する。
Hereinafter, a user data erase function in the above-described configuration, that is, a method for completely erasing all user data stored in the
<実施例1>
図6は、ユーザデータ領域210e内のすべてのユーザデータを、ブロック単位で繰返し消去する場合の方法について示すものである。
<Example 1>
FIG. 6 shows a method for repeatedly erasing all user data in the
たとえば、SDメモリカード200をフォーマットするに際して、デジタルカメラ100のホスト側コントローラ105からユーザデータ消去コマンドが出力されたとする。このユーザデータ消去コマンドは、信号ピン230を介して、SDメモリカード200内にシリアルに入力される。
For example, assume that a user data deletion command is output from the host-
すると、SDメモリカード200のカード側コントローラ220は、ホストインタフェース223を介して、そのユーザデータ消去コマンドを取り込む。そして、CPU221による、ユーザデータイレーズコマンドの生成を行う。この生成されたユーザデータイレーズコマンドは、フラッシュメモリインタフェース222から、8ビットのI/O線を介して、NAND型フラッシュメモリ210にパラレルに出力される。
Then, the card-
この実施例1の場合、CPU221は、たとえば、管理データ領域210hに格納されている、NAND型フラッシュメモリ210の各領域の位置情報を元に、ユーザデータが格納されている各ブロック領域のアドレスを求める。そして、得たアドレスにより指定される各ブロック領域内のデータを繰り返し消去するためのユーザデータイレーズコマンド、たとえば図6に示す、アドレス入力コマンド(60H)、ブロックアドレス(B−Add)、および、消去コマンド(D0H)からなるユーザデータイレーズコマンドを、ブロックごとに自動的に生成する。つまり、この実施例1において、ユーザデータイレーズコマンドの生成は、ユーザデータが格納されているブロック領域の数(最大で、ユーザデータ領域210e内の全ブロック領域の数(n))に応じて繰り返される。たとえば、消去ブロックサイズが16kByteのNAND型フラッシュメモリを利用して、1024ブロックのユーザデータ領域に対して連続して消去動作を行った場合、1.6GByteに相当するユーザデータが消去されることになる。
In the case of the first embodiment, the
ユーザデータイレーズコマンドを入力したNAND型フラッシュメモリ210は、ユーザデータ領域210e内のすべてのユーザデータ(上記ファイル管理情報を含む)を、ブロック単位で繰り返し消去する。すなわち、NAND型フラッシュメモリ210は、たとえば図6に示すように、コマンドラッチイネーブルCLEが“ハイ(H)”、アドレスラッチイネーブルALEが“ロウ(L)”、チップイネーブル/CE(0)が“L”、リードイネーブル/REが“H”となっている状態で、ライトイネーブル/WEが“L”から“H”に立ち上がる際のエッジに応答して、I/O線上のコマンド(60H)〜をラッチする。そして、消去コマンド(D0H)を取り込むと、対応するブロック領域内のデータを消去するユーザデータイレーズ動作をスタートし、Ready・/Busy(R・/B)を“L”にする。こうして、ユーザデータ領域210e内のすべてのユーザデータが消去されるまで、上記の動作を繰り返す。これにより、SDメモリカード200のフォーマットにおいて、ファイル管理情報の消去(初期化)のみならず、ユーザデータをも簡単に消去することが可能となる。
The
上記したように、デジタルカメラ100の簡単な操作により、ユーザデータ領域210e内のユーザデータをブロック単位で繰り返し消去することが可能となる。すなわち、デジタルカメラ100からのユーザデータ消去コマンドに応じて、すべてのユーザデータの消去を容易に可能とするためのユーザデータイレーズコマンドを自動的に生成できるようにしている。これにより、ユーザデータ領域210e内のすべてのユーザデータを簡単に消去することが可能となる。したがって、SDメモリカード200をフォーマットした後においては、たとえ第三者によるユーザデータの復元が試みられたとしても、漏洩などからユーザデータを保護できるものである。
As described above, the user data in the
なお、テスト工程によりブロック領域内の所定の冗長部(たとえば、最初のページの冗長ビット)にあらかじめ書き込まれた、不良ブロックか否かを示す識別フラグに応じて、不良ブロック領域内のデータの消去を行わないようにした場合には、そのフラグを残すことが可能となるため、イレーズ動作後のフラグの再書き込みが不要となるといったメリットもある。 It should be noted that the data in the defective block area is erased in accordance with the identification flag indicating whether or not the block is a defective block, which has been written in advance in a predetermined redundant portion (for example, the redundant bit of the first page) in the block area by the test process. If the operation is not performed, the flag can be left, so that there is an advantage that it is not necessary to rewrite the flag after the erase operation.
<実施例2>
図7は、ユーザデータ領域210e内のすべてのユーザデータを一括して(同時に)消去する場合の方法について示すものである。ここでは、イレーズ処理を行う範囲の指定を、ブロック単位で繰り返すようにした場合を例に説明する。
<Example 2>
FIG. 7 shows a method for erasing all user data in the
たとえば、SDメモリカード200をフォーマットするに際して、デジタルカメラ100のホスト側コントローラ105からユーザデータ消去コマンドが出力されたとする。すると、SDメモリカード200のカード側コントローラ220は、信号ピン230およびホストインタフェース223を介して、そのユーザデータ消去コマンドをシリアルに取り込む。そして、CPU221による、ユーザデータイレーズコマンドの生成を行う。
For example, assume that a user data deletion command is output from the host-
この実施例2の場合、CPU221は、たとえば、管理データ領域210hに格納されている、NAND型フラッシュメモリ210の各領域の位置情報を元に、ユーザデータが格納されている各ブロック領域のアドレスを求める。そして、得たアドレスにより指定される各ブロック領域内のデータを一括して消去するためのユーザデータイレーズコマンド、たとえば図7に示す、アドレス入力コマンド(60H)およびブロックアドレス(B−Add)からなるコマンドをブロック領域ごとに繰り返し生成するとともに、最後に、消去コマンド(D0H)が付加されてなるユーザデータイレーズコマンドを自動的に生成する。つまり、この実施例2においては、アドレス入力コマンド(60H)およびブロックアドレス(B−Add)からなるコマンドの生成が、ユーザデータが格納されているブロック領域の数(最大で、ユーザデータ領域210e内の全ブロック領域の数(n))に応じて繰り返される。
In the case of the second embodiment, the
CPU221により生成されたユーザデータイレーズコマンドが、フラッシュメモリインタフェース222から、8ビットのI/O線を介して、NAND型フラッシュメモリ210にパラレルに出力されることにより、NAND型フラッシュメモリ210は、ユーザデータ領域210e内のすべてのユーザデータ(上記ファイル管理情報を含む)を一括して消去する。すなわち、NAND型フラッシュメモリ210は、たとえば図7に示すように、コマンドラッチイネーブルCLEが“ハイ(H)”、アドレスラッチイネーブルALEが“ロウ(L)”、チップイネーブル/CE(0)が“L”、リードイネーブル/REが“H”となっている状態で、ライトイネーブル/WEが“L”から“H”に立ち上がる際のエッジに応答して、I/O線上のコマンド(60H)〜を順にラッチする。こうして、I/O線上のコマンド(60H)〜がすべてラッチされるまで、上記の動作を繰り返す。そして、消去コマンド(D0H)を取り込むと、対応する各ブロック領域内のデータを一括して消去するユーザデータイレーズ動作をスタートし、Ready・/Busy(R・/B)を“L”にする。
The user data erase command generated by the
この実施例2のような方法によっても、上述した実施例1の場合と同様に、SDメモリカード200のフォーマットにおいて、ファイル管理情報の消去(初期化)のみならず、ユーザデータをも簡単に消去することが可能である。
Even in the method of the second embodiment, as in the first embodiment, not only the file management information is erased (initialized) but also the user data is easily erased in the format of the
また、この実施例2の場合も、ユーザデータのうち、たとえばファイル管理情報だけを消去せずに残したり、不良ブロック領域内の有効でないデータはあらかじめ消去しないようにして有効なデータだけを消去するようにするなど、汎用性が高く、効率のよいイレーズ動作を容易に可能とする。 Also in the case of the second embodiment, for example, only file management information is left without being erased, or only valid data is erased without previously erasing invalid data in the bad block area. This makes it easy to perform an erase operation with high versatility and high efficiency.
<実施例3>
図8は、ユーザデータ領域210e内のすべてのユーザデータを一括して消去する場合の他の方法について示すものである。ここでは、イレーズ処理を行う範囲の指定に、ブロック領域の数(ブロックサイズ)を用いるようにした場合を例に説明する。
<Example 3>
FIG. 8 shows another method for collectively erasing all user data in the
たとえば、SDメモリカード200をフォーマットするに際して、デジタルカメラ100のホスト側コントローラ105からユーザデータ消去コマンドが出力されたとする。すると、SDメモリカード200のカード側コントローラ220は、信号ピン230およびホストインタフェース223を介して、そのユーザデータ消去コマンドをシリアルに取り込む。そして、CPU221による、ユーザデータイレーズコマンドの生成を行う。
For example, assume that a user data deletion command is output from the host-
この実施例3の場合、CPU221は、たとえば、管理データ領域210hに格納されている、NAND型フラッシュメモリ210の各領域の位置情報を元に、ユーザデータが格納されている先頭のブロック領域のアドレス(スタートアドレスSA)と、その先頭のブロック領域から最終のブロック領域までのブロック領域の数(ブロックサイズBS)とを求める。そして、得たスタートアドレスとブロックサイズとにより連続して指定される範囲内の各ブロック領域内のデータを一括して消去するためのユーザデータイレーズコマンド、たとえば図8に示す、サイズ入力コマンド(CM0)、ブロックサイズ(BS)、アドレス入力コマンド(CM1)、スタートアドレス(SA)、および、指定範囲消去コマンド(CM2)からなるユーザデータイレーズコマンドを自動的に生成する。
In the case of the third embodiment, the
CPU221により生成されたユーザデータイレーズコマンドが、フラッシュメモリインタフェース222から、8ビットのI/O線を介して、NAND型フラッシュメモリ210にパラレルに出力されることにより、NAND型フラッシュメモリ210は、ユーザデータ領域210e内のすべてのユーザデータ(上記ファイル管理情報を含む)を一括して消去する。すなわち、NAND型フラッシュメモリ210は、たとえば図8に示すように、コマンドラッチイネーブルCLEが“ハイ(H)”、アドレスラッチイネーブルALEが“ロウ(L)”、チップイネーブル/CE(0)が“L”、リードイネーブル/REが“H”となっている状態で、ライトイネーブル/WEが“L”から“H”に立ち上がる際のエッジに応答して、I/O線上のコマンド(CM0)〜をラッチする。そして、範囲指定消去コマンド(CM2)を取り込むと、指定された範囲内の全ブロック領域内のデータを一括して消去するユーザデータイレーズ動作をスタートし、Ready・/Busy(R・/B)を“L”にする。
The user data erase command generated by the
この実施例3のような方法によっても、上述した実施例1,2の場合と同様に、SDメモリカード200のフォーマットにおいて、ファイル管理情報の消去(初期化)のみならず、ユーザデータをも簡単に消去することが可能である。
Even in the method of the third embodiment, in the same manner as in the first and second embodiments described above, in the format of the
なお、この実施例3のさらに別の方法として、ブロックサイズ(BS)の代わりに、ユーザデータが格納されている最終のブロック領域のアドレス(エンドアドレス)によって、イレーズ処理を行う範囲を指定するようにした場合にも、同様に実施することが可能である。 As still another method of the third embodiment, the range for performing the erase process is designated by the address (end address) of the last block area in which user data is stored instead of the block size (BS). It is possible to carry out in the same way also in the case of.
なお、上述した実施例1〜3においては、1つのNAND型フラッシュメモリ210を例に、ユーザデータ領域210e内のユーザデータを消去する場合の方法について説明した。これに限らず、たとえばメモリチップが、複数のNAND型フラッシュメモリからなる場合にも、同様に実施できる。
In the first to third embodiments, the method for erasing user data in the
また、ユーザデータ領域210e内のユーザデータだけを消去する場合について説明した。これに限らず、場合によっては、ユーザデータ領域210eのみでなく、必要に応じて、制御情報格納領域210dを含む、カード側コントローラ220が利用可能な通常領域210c内のデータをすべて(または、選択的に)消去できるようにすることも容易に可能である。
Further, the case where only the user data in the
また、ブロック領域のアドレスやサイズなどによって消去の範囲を指定することなく、特定のコマンドを自動的に生成することにより、ユーザデータ領域210e内の全ブロック領域を消去の範囲としてイレーズ動作を行うことも可能である。
In addition, an erase operation is performed using all block areas in the
さらに、ユーザデータの消去はフォーマット時に限らず、必要に応じて実施できることは勿論である。 Further, the user data can be erased not only at the time of formatting but also as required.
[第2の実施形態]
図9は、この発明の第2の実施形態にしたがった、NAND型フラッシュメモリの他の構成例を示すものである。なお、ここでは、図2に示した構成において、メモリチップが、複数(この例の場合、4つ)のNAND型フラッシュメモリからなる場合について説明する。また、NAND型フラッシュメモリが備えるチップイレーズという機能(たとえば、特開平5−274215号公報参照)を利用して、ユーザデータを消去するようにした場合を例に説明する。
[Second Embodiment]
FIG. 9 shows another configuration example of the NAND flash memory according to the second embodiment of the present invention. Here, a case will be described in which the memory chip is composed of a plurality (four in this example) of NAND flash memories in the configuration shown in FIG. Further, a case will be described as an example where user data is erased using a chip erase function (for example, see Japanese Patent Application Laid-Open No. 5-274215) provided in the NAND flash memory.
すなわち、NAND型フラッシュメモリ210は、4つのNAND型フラッシュメモリチップ(NAND Flash 0〜3)211,212,213,214を含んでいる。4つのNAND型フラッシュメモリチップ211〜214には、それぞれ、チップイネーブル/CE0〜/CE3が独立に与えられている。これに対し、電源Vdd、グランドVss、I/O、Ready・/Busy、コマンドラッチイネーブルCLE、アドレスラッチイネーブルALE、リードイネーブル/RE、および、ライトイネーブル/WEなどの信号線は、4つのNAND型フラッシュメモリチップ211〜214によって共有されている。なお、図9では、電源Vdd、グランドVss、I/O、Ready・/Busy、コマンドラッチイネーブルCLE、アドレスラッチイネーブルALE、リードイネーブル/RE、および、ライトイネーブル/WEなどの信号線を、便宜上、1本の信号線として示している。
That is, the
本実施形態の場合、NAND型フラッシュメモリチップ(第1のNAND型フラッシュメモリチップ)211は、たとえば図10(a)に示すように、そのメモリ領域210aが、ROM領域210bと、制御情報格納領域(非ユーザデータ領域)210dおよびユーザデータ領域210eからなる通常領域210cと、に分けられている。一方、NAND型フラッシュメモリチップ(第2のNAND型フラッシュメモリチップ)212〜214は、たとえば図10(b)に示すように、そのメモリ領域210aのすべてがユーザデータ領域210eとして割り当てられている。
In the present embodiment, the NAND flash memory chip (first NAND flash memory chip) 211 has a
図11は、上記した構成において、NAND型フラッシュメモリ210内のユーザデータを一括して消去する場合の方法について示すものである。なお、チップイレーズという機能は、本来、カード側コントローラ220からのチップイレーズコマンドに応じて、カード側コントローラ220が利用可能な、通常領域210c内のデータをすべて消去するものである。
FIG. 11 shows a method for collectively erasing user data in the
たとえば、SDメモリカード200をフォーマットするに際して、デジタルカメラ100のホスト側コントローラ105からユーザデータ消去コマンドが出力されたとする。すると、SDメモリカード200のカード側コントローラ220は、信号ピン230およびホストインタフェース223を介して、そのユーザデータ消去コマンドをシリアルに取り込む。そして、CPU221による、チップイレーズコマンドの生成を行う。
For example, assume that a user data deletion command is output from the host-
この例の場合、CPU221は、たとえば、NAND型フラッシュメモリチップ211〜214の、通常領域210c内のすべてのデータを一括して消去するためのチップイレーズコマンド、たとえば図11に示す、コマンド(30H)の繰り返しからなるチップイレーズコマンド(30H−30H)を自動的に生成する。そして、生成したチップイレーズコマンド(30H−30H)を、フラッシュメモリインタフェース222から、8ビットのI/O線を介して、NAND型フラッシュメモリチップ211を除く、NAND型フラッシュメモリチップ212〜214にパラレルに出力する。
In this example, the
これにより、NAND型フラッシュメモリチップ212〜214は、たとえば図11に示すように、コマンドラッチイネーブルCLEが“ハイ(H)”、アドレスラッチイネーブルALEが“ロウ(L)”、チップイネーブル/CE1〜/CE3が“L”、リードイネーブル/REが“H”となっている状態で、ライトイネーブル/WEが“L”から“H”に立ち上がる際のエッジに応答して、I/O線上のコマンド(30H)をラッチする。そして、2つ目のコマンド(30H)を取り込むと、NAND型フラッシュメモリチップ212〜214は、通常領域210cに相当する、ユーザデータ領域210eの全ブロック領域内のユーザデータを一括して消去するチップイレーズ動作をスタートし、Ready・/Busy(R・/B)を“L”にする。
As a result, as shown in FIG. 11, for example, the NAND
一方、NAND型フラッシュメモリチップ211は、たとえば図11に示すように、チップイネーブル/CE0が“H”となっている。そのため、NAND型フラッシュメモリチップ211は、チップイレーズコマンド(30H−30H)を取り込まない。つまり、NAND型フラッシュメモリチップ211に対応するチップイネーブル/CE0を“H”のままとすることにより、NAND型フラッシュメモリチップ211でのチップイレーズコマンド(30H−30H)の取り込みを禁止する。その結果、NAND型フラッシュメモリチップ211を除く、NAND型フラッシュメモリチップ212〜214においてのみ、チップイレーズ動作が行われる。
On the other hand, in the NAND
この実施形態によれば、SDメモリカード200のフォーマットに際して、NAND型フラッシュメモリチップ211の制御情報格納領域210d内に格納されている、機密データ(機密データ領域210g)、および、カード情報(管理データ領域210h)などを喪失することなしに、NAND型フラッシュメモリチップ212〜214のユーザデータ領域210e内に格納されている、ユーザデータ(ファイル管理情報を含む)だけを簡単に消去することが可能である。
According to this embodiment, when formatting the
ただし、NAND型フラッシュメモリチップ211のユーザデータ領域210e内に格納されているユーザデータは消去されずに残るので、重要なユーザデータは、NAND型フラッシュメモリチップ212〜214に格納するようにする。こうすることによって、セキュリティ上の問題も解決できる。
However, since the user data stored in the
このように、ファームウェアなどを格納するNAND型フラッシュメモリチップ211以外の、ユーザデータのみを格納するNAND型フラッシュメモリチップ212〜214に対してのみ、チップイレーズコマンドを与えるようにすることで、ファームウェアなどのCPU221の制御に必要なデータはそのままに、ユーザデータだけを消去できるようになる。すなわち、このチップイレーズという機能を利用することによっても、デジタルカメラ100の簡単な操作により、NAND型フラッシュメモリチップ212〜214におけるユーザデータの消去が容易に可能である。
In this way, by giving a chip erase command only to the NAND
なお、ファームウェアなどの必要なデータを含め、NAND型フラッシュメモリチップ211〜214におけるユーザデータの消去を行う場合には、チップイレーズコマンドの出力時に、対応するチップイネーブル/CE0〜/CE3をすべて“L”にすればよい。
When erasing user data in the NAND
また、チップイレーズコマンドは、4つのNAND型フラッシュメモリチップ211〜214に同時に与えることも、順番を決めて与えることも可能であるし、4つのNAND型フラッシュメモリチップ211〜214に対して選択的に与えることも容易に可能である。
Further, the chip erase command can be given to the four NAND
また、ファームウェアなどを格納するNAND型フラッシュメモリチップ211と、ユーザデータのみを格納するNAND型フラッシュメモリチップ212〜214とを備える構成においては、たとえば、NAND型フラッシュメモリチップ212〜214に対してはチップイレーズコマンドを、NAND型フラッシュメモリチップ211に対しては、上述の実施例1〜3に示したユーザデータイレーズコマンドを、それぞれ与えることも可能である。この場合、NAND型フラッシュメモリチップ211〜214にそれぞれ格納されているすべてのユーザデータを完全に、かつ、効率よく消去することが可能となる。
In the configuration including the NAND
このような構成とした場合においても、上述した第1の実施形態の場合と同様に、SDメモリカード200のフォーマットにおいて、ファイル管理情報の消去(初期化)のみならず、ユーザデータをも簡単に消去することが可能である。
Even in such a configuration, as in the case of the first embodiment described above, in the format of the
また、ユーザデータの消去はフォーマット時に限らず、必要に応じて実施できることは勿論である。 Of course, erasure of user data is not limited to formatting but can be performed as necessary.
また、SDメモリカード200を利用可能なホスト機器(処理装置)としては、上述のデジタルカメラに限らず、たとえば図12に示すように、カメラ付きの携帯電話110であってもよい。
The host device (processing device) that can use the
携帯電話110のボディ111には、SDメモリカード200が装着されるスロット113が設けられている。また、上記ボディ111内には、ホスト側コントローラ115が設けられている。ホスト側コントローラ115は、装着されるSDメモリカード200にアクセスするための機能を備え、上記SDメモリカード200に対するユーザデータ(この例の場合、デジタル画像や電話番号などの個人情報)の書き込みおよび読み出しを制御する。また、ホスト側コントローラ115は、たとえばSDメモリカード200をフォーマットする際に、SDメモリカード200に対して、ユーザデータ消去コマンド(第1のコマンド)を発行する。
The body 111 of the mobile phone 110 is provided with a slot 113 in which the
これに対し、SDメモリカード200は、たとえば第1および第2の実施形態に示したように、ユーザデータイレーズコマンドまたはチップイレーズコマンドを自動的に生成し、少なくとも有効なユーザデータの消去を実行する。
On the other hand, the
すなわち、SDメモリカード200を利用する携帯電話110においては、たとえば第1および第2の実施形態の場合と同様に、携帯電話110に対するユーザによる直接の簡単な操作に応じて、SDメモリカード200に格納されているユーザデータを容易に消去することが可能となる。これにより、個人情報などのユーザデータの流出を未然に防止でき、機密保持が容易に可能となるものである。
That is, in the mobile phone 110 using the
なお、この携帯電話110の場合、携帯電話110に対するユーザによる直接の操作によらず、たとえば、通信機能を利用した遠隔操作により、ユーザデータの消去を行うことも可能である。たとえば、SDメモリカード200が装着されたままの状態でユーザが携帯電話110を紛失などした場合、その携帯電話110に対して送出される、ユーザから連絡を受けた通信事業者からの特定の信号を受信することにより、ホスト側コントローラ115からSDメモリカード200に、ユーザデータ消去コマンドが発行されるようにすればよい。
In the case of the mobile phone 110, the user data can be erased by, for example, a remote operation using a communication function, instead of the user's direct operation on the mobile phone 110. For example, when the user loses the mobile phone 110 with the
このように、ユーザデータの消去はフォーマット時に限らず、必要に応じて実施できることは勿論である。 As described above, the erasure of user data is not limited to the time of formatting but can be performed as needed.
また、ホスト機器(処理装置)の実施形態としては、デジタルカメラや携帯電話に限らず、たとえば、PC(パーソナルコンピュータ)またはカード用のリーダ/ライタであってもよい。 Further, embodiments of the host device (processing device) are not limited to a digital camera or a mobile phone, but may be a PC (personal computer) or a card reader / writer, for example.
いずれの実施形態においても、効率よくユーザデータ領域のデータを消去するために、非セキュアな一般データ領域のデータとセキュアな保護データ領域のデータとを一括消去する例を示した。しかし、別の実施形態としては、セキュアな領域のデータを消去する場合、属性情報(CSD)などにもとづいて、セキュアな領域へのアクセスが可能なホスト機器からのアクセスが可能な状態でのみ、ユーザデータ消去コマンドを受け付けるようにすることも考えられる。これにより、本来は、セキュアな領域にアクセスできないホスト機器によって、セキュアな領域のデータが消去されるのを防ぐことが可能となる。なお、この場合、一般データ領域のデータを消去するコマンドと保護データ領域のデータを消去するコマンドとを、それぞれ別のコマンドにすることも考えられる。 In any of the embodiments, in order to efficiently erase the data in the user data area, the example in which the data in the non-secure general data area and the data in the secure protected data area are erased collectively has been shown. However, as another embodiment, when data in a secure area is erased, only in a state where access from a host device that can access the secure area is possible based on attribute information (CSD), etc. It is also conceivable to accept a user data erase command. As a result, it is possible to prevent the data in the secure area from being erased by the host device that cannot originally access the secure area. In this case, it is also conceivable that the command for erasing the data in the general data area and the command for erasing the data in the protected data area are different commands.
カードに格納されたユーザデータの漏洩を防止するためには、ホスト機器からの1つのコマンドに応答して、できる限り多くのユーザデータを消去するのが一つの方法である。たとえば、ホスト機器からの1つのコマンドに応答して、カードがすべてのユーザデータを消去するのではなく、カードが少なくともNAND型フラッシュメモリの50消去ブロック以上のユーザデータを消去するようにすることも可能である。なお、ユーザデータが誤って一括消去されるのを防止するため、ホスト側コントローラが少なくとも2回以上、繰り返しカードに対してユーザデータ消去コマンドを送出するようにしてもよい。 In order to prevent leakage of user data stored in the card, one method is to erase as much user data as possible in response to one command from the host device. For example, in response to one command from the host device, the card may erase at least 50 erase blocks of the NAND flash memory instead of erasing all user data. Is possible. In order to prevent user data from being erased by mistake, the host-side controller may repeatedly send a user data erase command to the card at least twice.
また、上述した各実施形態において、ユーザデータの消去に要する時間を、ユーザに知らしめるようにしてもよい。一般に、ユーザデータの消去に要する時間は、使用するNAND型フラッシュメモリ210の特性、ユーザデータ領域210eのサイズ、カード側コントローラ220が採用する消去の方式などによってさまざまである。そこで、目安となる時間を、たとえば属性情報(CSD)として、あらかじめNAND型フラッシュメモリ210内に格納しておくことにより、ユーザデータの消去に要する時間を容易に通知することが可能となる。
In each of the above-described embodiments, the user may be informed of the time required for erasing user data. In general, the time required for erasing user data varies depending on the characteristics of the
さらに、本願発明は、SDメモリカードのみに限定されるものではない。 Further, the present invention is not limited to the SD memory card.
その他、本願発明は、上記(各)実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、上記(各)実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。たとえば、(各)実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題(の少なくとも1つ)が解決でき、発明の効果の欄で述べられている効果(の少なくとも1つ)が得られる場合には、その構成要件が削除された構成が発明として抽出され得る。 In addition, the present invention is not limited to the above (each) embodiment, and various modifications can be made without departing from the scope of the invention in the implementation stage. Further, the above (each) embodiment includes various stages of the invention, and various inventions can be extracted by appropriately combining a plurality of disclosed constituent elements. For example, even if several constituent requirements are deleted from all the constituent requirements shown in the (each) embodiment, the problem (at least one) described in the column of the problem to be solved by the invention can be solved. When the effect (at least one of the effects) described in the “Effect” column is obtained, a configuration from which the constituent requirements are deleted can be extracted as an invention.
100…デジタルカメラ、105…ホスト側コントローラ、110…携帯電話、115…ホスト側コントローラ、200…SDメモリカード、210…NAND型フラッシュメモリ、210a…メモリ領域、210b…ROM領域、210c…通常領域、210d…制御情報格納領域、210e…ユーザデータ領域、211,212,213,214…NAND型フラッシュメモリチップ、220…カード側コントローラ、221…CPU、222…フラッシュメモリインタフェース、223…ホストインタフェース、230…信号ピン。 DESCRIPTION OF SYMBOLS 100 ... Digital camera, 105 ... Host side controller, 110 ... Mobile phone, 115 ... Host side controller, 200 ... SD memory card, 210 ... NAND flash memory, 210a ... Memory area, 210b ... ROM area, 210c ... Normal area, 210d ... Control information storage area, 210e ... User data area, 211, 212, 213, 214 ... NAND flash memory chip, 220 ... Card side controller, 221 ... CPU, 222 ... Flash memory interface, 223 ... Host interface, 230 ... Signal pin.
Claims (14)
データの消去が可能な不揮発性メモリチップに対し、前記第1のインタフェースにて受け付けた前記第1のコマンドに対応する第2のコマンドを出力する第2のインタフェースと、
前記不揮発性メモリチップにおいてデータを保持可能な通常領域のうち、前記不揮発性メモリチップに含まれる複数の領域の位置情報を含む制御情報格納領域の制御情報を除き、ユーザデータを消去させるためのユーザデータイレーズコマンドを、前記第2のコマンドとして前記第2のインタフェースより出力する制御回路と
を具備し、前記通常領域は、少なくとも前記制御情報格納領域、一般データ領域、及び該一般データ領域内のデータの引っ越し書き込みに使用するスペアブロックとしての代替ブロック領域を含み、
前記ユーザデータイレーズコマンドによって、前記一般データ領域及び前記代替ブロック領域内のデータを含む前記ユーザデータの全てが消去されることを特徴とするコントローラ。 A first interface for accepting a first command from the processing device;
A second interface for outputting a second command corresponding to the first command received by the first interface to a nonvolatile memory chip capable of erasing data;
Among the non-volatile memory chip the normal area capable of holding Oite data, Except the control information in the control information storage area including the position information of the plurality of areas included in the non-volatile memory chip, to erase the user data A control circuit that outputs a user data erase command for the second command as the second command from the second interface , wherein the normal area includes at least the control information storage area, the general data area, and the general data area Including a spare block area as a spare block used for moving data in
The controller, wherein all of the user data including data in the general data area and the alternative block area is erased by the user data erase command .
ことを特徴とする請求項1記載のコントローラ。 The controller according to claim 1.
前記ユーザデータイレーズコマンドは、アドレス入力コマンド、ブロックアドレス、及び消去コマンドを含むコマンドセットであり、 The user data erase command is a command set including an address input command, a block address, and an erase command,
前記制御回路は、消去すべき前記ユーザデータが含まれる領域のブロックアドレスを算出して、算出したブロックアドレスの数だけ、前記ユーザデータイレーズコマンドを発行する The control circuit calculates a block address of an area including the user data to be erased, and issues the user data erase command by the number of calculated block addresses.
ことを特徴とする請求項2記載のコントローラ。 The controller according to claim 2.
前記ユーザデータイレーズコマンドは、アドレス入力コマンド、ブロックアドレス、及び消去コマンドを含むコマンドセットであり、 The user data erase command is a command set including an address input command, a block address, and an erase command,
前記制御回路は、消去すべき前記ユーザデータが含まれる領域のブロックアドレスを算出して、算出したブロックアドレスの数だけ、前記アドレス入力コマンド及び前記ブロックアドレスを発行し、最後に前記消去コマンドを発行する The control circuit calculates a block address of an area including the user data to be erased, issues the address input command and the block address by the calculated number of block addresses, and finally issues the erase command. Do
ことを特徴とする請求項2記載のコントローラ。 The controller according to claim 2.
ことを特徴とする請求項1記載のコントローラ。 The controller according to claim 1.
処理装置からの第1のコマンドを受け付ける第1のインタフェース、前記メモリチップに対し、前記第1のインタフェースにて受け付けた前記第1のコマンドに対応する第2のコマンドを出力する第2のインタフェース、および、前記第2のインタフェースより、前記第2のコマンドとして、前記不揮発性メモリチップにおいてデータを保持可能な通常領域のうち、前記不揮発性メモリチップに含まれる複数の領域の位置情報を含む制御情報格納領域の制御情報を除き、ユーザデータを消去させるためのユーザデータイレーズコマンドを出力する制御回路、を含むカード用コントローラと
を具備し、前記通常領域は、少なくとも前記制御情報格納領域、一般データ領域、及び該一般データ領域内のデータの引っ越し書き込みに使用するスペアブロックとしての代替ブロック領域を含み、
前記ユーザデータイレーズコマンドによって、前記一般データ領域及び前記代替ブロック領域内のデータを含む前記ユーザデータの全てが消去されることを特徴とするメモリカード。 A nonvolatile memory chip capable of erasing data;
A first interface for receiving a first command from a processing device; a second interface for outputting a second command corresponding to the first command received at the first interface to the memory chip; and, from the second interface, as the second command, among the non-volatile memory chip the normal area capable of holding Oite data includes position information of a plurality of areas included in the non-volatile memory chips except the control information in the control information storage region, comprising a controller card including a control circuit, for outputting a user data erase command for erasing user data, the normal region, at least the control information area, General data area and spare used for moving writing of data in the general data area Including alternate block areas as blocks,
All of the user data including the data in the general data area and the alternative block area is erased by the user data erase command .
ことを特徴とする請求項6記載のメモリカード。 The memory card according to claim 6.
前記ユーザデータイレーズコマンドは、アドレス入力コマンド、ブロックアドレス、及び消去コマンドを含むコマンドセットであり、 The user data erase command is a command set including an address input command, a block address, and an erase command,
前記制御回路は、消去すべき前記ユーザデータが含まれる領域のブロックアドレスを算出して、算出したブロックアドレスの数だけ、前記ユーザデータイレーズコマンドを発行する The control circuit calculates a block address of an area including the user data to be erased, and issues the user data erase command by the number of calculated block addresses.
ことを特徴とする請求項7記載のメモリカード。 The memory card according to claim 7.
前記ユーザデータイレーズコマンドは、アドレス入力コマンド、ブロックアドレス、及び消去コマンドを含むコマンドセットであり、 The user data erase command is a command set including an address input command, a block address, and an erase command,
前記制御回路は、消去すべき前記ユーザデータが含まれる領域のブロックアドレスを算出して、算出したブロックアドレスの数だけ、前記アドレス入力コマンド及び前記ブロックアドレスを発行し、最後に前記消去コマンドを発行する The control circuit calculates a block address of an area including the user data to be erased, issues the address input command and the block address by the calculated number of block addresses, and finally issues the erase command. Do
ことを特徴とする請求項7記載のメモリカード。 The memory card according to claim 7.
ことを特徴とする請求項6記載のメモリカード。 The memory card according to claim 6.
前記複数のNAND型フラッシュメモリチップは、それぞれ、コマンドラインを含む信号線を共有するとともに、前記ユーザデータが一括して消去されることを特徴とする請求項6に記載のメモリカード。 The nonvolatile memory chip includes a plurality of NAND flash memory chips,
7. The memory card according to claim 6 , wherein each of the plurality of NAND flash memory chips shares a signal line including a command line, and the user data is erased collectively.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008151012A JP4792062B2 (en) | 2008-06-09 | 2008-06-09 | Memory card and controller mounted on the memory card |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008151012A JP4792062B2 (en) | 2008-06-09 | 2008-06-09 | Memory card and controller mounted on the memory card |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004219179A Division JP2006039966A (en) | 2004-07-27 | 2004-07-27 | Memory card, card controller installed in memory card, and processing unit of memory card |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2008276793A JP2008276793A (en) | 2008-11-13 |
JP2008276793A5 JP2008276793A5 (en) | 2010-09-02 |
JP4792062B2 true JP4792062B2 (en) | 2011-10-12 |
Family
ID=40054586
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008151012A Active JP4792062B2 (en) | 2008-06-09 | 2008-06-09 | Memory card and controller mounted on the memory card |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4792062B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5435763B2 (en) * | 2009-03-27 | 2014-03-05 | エルエスアイ コーポレーション | Logical block address deallocation management and data hardening for storage systems |
-
2008
- 2008-06-09 JP JP2008151012A patent/JP4792062B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2008276793A (en) | 2008-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100468307C (en) | Memory card, card controller mounted on the memory card, and device for processing the memory card | |
US9037782B2 (en) | Method of programming memory cells and reading data, memory controller and memory storage apparatus using the same | |
US7392343B2 (en) | Memory card having a storage cell and method of controlling the same | |
JP4805696B2 (en) | Semiconductor integrated circuit device and data recording method thereof | |
US8037232B2 (en) | Data protection method for power failure and controller using the same | |
US7739443B2 (en) | Memory controller, memory device and control method for the memory controller | |
US9058296B2 (en) | Data processing method, memory storage device and memory control circuit unit | |
US20090198875A1 (en) | Data writing method for flash memory, and controller and system using the same | |
KR20040023643A (en) | Flash memory apparatus and method for merging data stored in the same | |
US9619380B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
US8127072B2 (en) | Data storage device and method for accessing flash memory | |
JPWO2007000862A1 (en) | MEMORY CONTROLLER, NONVOLATILE MEMORY DEVICE, NONVOLATILE MEMORY SYSTEM, AND DATA WRITE METHOD | |
JPWO2005083573A1 (en) | Semiconductor memory device | |
KR100882740B1 (en) | Method and storage device of mapping a nonvolatile memory based on map history | |
US8812756B2 (en) | Method of dispatching and transmitting data streams, memory controller and storage apparatus | |
US20190324904A1 (en) | Trim command recording method, memory control circuit unit and memory storage device | |
US20090210612A1 (en) | Memory controller, nonvolatile memory device, and nonvolatile memory system | |
JP2008225672A (en) | Semiconductor memory device | |
CN107678679B (en) | Scanning method for super block of solid state storage device | |
JP4308780B2 (en) | Semiconductor memory device, memory controller, and data recording method | |
JP4792062B2 (en) | Memory card and controller mounted on the memory card | |
JP4177292B2 (en) | MEMORY CONTROLLER, FLASH MEMORY SYSTEM, AND FLASH MEMORY CONTROL METHOD | |
JP4177301B2 (en) | Memory controller, flash memory system, and flash memory control method | |
TWI664569B (en) | Data storage apparatus and system information programming mehtod | |
JP2008071079A (en) | Memory system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081031 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100721 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110628 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110722 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140729 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4792062 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |