JP2006277736A - Writing method of nonvolatile storage device - Google Patents
Writing method of nonvolatile storage device Download PDFInfo
- Publication number
- JP2006277736A JP2006277736A JP2006055834A JP2006055834A JP2006277736A JP 2006277736 A JP2006277736 A JP 2006277736A JP 2006055834 A JP2006055834 A JP 2006055834A JP 2006055834 A JP2006055834 A JP 2006055834A JP 2006277736 A JP2006277736 A JP 2006277736A
- Authority
- JP
- Japan
- Prior art keywords
- flash memory
- data
- physical block
- physical
- writing
- 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.)
- Granted
Links
Images
Landscapes
- Read Only Memory (AREA)
Abstract
Description
本発明は、半導体メモリを使用した不揮発性記憶装置のデータの書込み方法に関する。 The present invention relates to a method for writing data in a nonvolatile memory device using a semiconductor memory.
近年、不揮発性メモリを搭載したメモリーカードは、デジタルカメラや携帯電話に用いられる記録媒体として、その市場を拡大している。そしてメモリーカードの記憶容量の増加に伴い、データファイルや静止画等の小容量の記録から、より大容量が必要となる動画記録へとその用途は広がっている。 In recent years, a memory card equipped with a non-volatile memory has been expanding its market as a recording medium used in digital cameras and mobile phones. As the storage capacity of the memory card increases, its use has expanded from recording a small volume of data files, still images, etc. to recording a moving image that requires a larger capacity.
しかし、メモリーカードの不揮発性メモリとして主に使用されているNANDタイプのフラッシュメモリは、その容量の増加に伴いデータの消去単位となる物理ブロックの容量が16KB(主に128MB以下のフラッシュメモリ)のものから128KB(主に128MB以上のフラッシュメモリ)のものになっている。にもかかわらずメモリーカードにデータを書込む際のファイルシステムでは、データの書込み単位となるクラスタは16KBのままで変化していない。 However, NAND-type flash memory, which is mainly used as a non-volatile memory for memory cards, has a physical block capacity of 16KB (mainly flash memory of 128MB or less) as a data erasing unit as its capacity increases. From 128 KB (mainly flash memory of 128 MB or more). Nevertheless, in the file system for writing data to the memory card, the cluster serving as a data writing unit remains 16 KB.
そのために以前の小容量のメモリーカード(主に128MBまでの容量)においては、メモリーカードにデータを書込む際クラスタの容量と、メモリーカード内部に搭載されているNANDタイプのフラッシュメモリの消去単位となる物理ブロックは等しかった。しかし大容量化が進むと、具体的には128MBを越える容量値の不揮発性メモリなどは、メモリーカードにデータを書込む単位であるクラスタの容量の16KBと、メモリーカード内部に搭載されているNANDタイプのフラッシュメモリの消去単位である物理ブロックの容量の128KBが異なっている。 For that reason, in the former small capacity memory card (mainly capacity up to 128MB), the capacity of the cluster when writing data to the memory card, and the erase unit of the NAND type flash memory installed in the memory card The physical blocks to be equal. However, as capacity increases, non-volatile memory with a capacity value exceeding 128 MB, such as cluster capacity of 16 KB, which is a unit for writing data to the memory card, and NAND mounted inside the memory card The physical block capacity 128 KB, which is an erase unit of the type flash memory, is different.
図2はフラッシュメモリの内部構成を示した図である。フラッシュメモリはページバッファ202と複数の物理ブロック201からなる。ページバッファ202はフラッシュメモリの書き込み読み出しするデータが一時的に格納されるバッファである。物理ブロック201ひとつ分の容量はデータ領域の128KBと管理領域の4KBの合計132KBからなる。ここでは物理ブロックはPB0〜PB1023まで1024個あるのでデータ領域の容量が128MB(1Gbit)のフラッシュメモリになる。物理ブロック201はフラッシュメモリにおけるデータの消去単位である。
FIG. 2 shows the internal structure of the flash memory. The flash memory includes a
図3は物理ブロック201の内部構成を示した図である。物理ブロック201はPP0〜PP63の64個の物理ページ301からなる。物理ページ301ひとつ分の容量はデータ領域の2KBと管理領域の64Bである。物理ページ301はフラッシュメモリにおけるデータの書き込み単位であり、図2で示したページバッファ202の容量は物理ページの容量と等しい。
FIG. 3 is a diagram showing the internal configuration of the
このようにデータの消去単位である物理ブロック201のデータ領域が128KBであるのでクラスタ単位である16KBの書込みであっても、16KBの書き込みと112KB(128KB−16KB)のデータのコピーを行うことによって消去単位である128KBの書込みを行っていた。この際にデータをコピーする方法として、NANDタイプのフラッシュメモリのコピーバック機能を使用することが出来る。このことは、特許文献1にも述べられている。コピーバック機能を使用することによりコピーするデータを不揮発性メモリ外部へ転送する必要がないので、高速にデータをコピーすることが出来るという利点がある。
As described above, since the data area of the
コピーバック機能を使用したデータのコピーについて図14,15を用いて簡単に説明する。図14はフラッシュメモリの内部構成を示しており1401はフラッシュメモリ、1402はページバッファ、1403と1404はそれぞれフラッシュメモリ1401内部の物理ブロックを示している。
Data copying using the copy back function will be briefly described with reference to FIGS. FIG. 14 shows the internal configuration of the flash memory. 1401 is a flash memory, 1402 is a page buffer, 1403 and 1404 are physical blocks inside the
同図(A)に示す状態は、物理ブロック1404にデータが書き込み済みで、物理ブロック1403が消去済みである。
In the state shown in FIG. 6A, data has been written to the
同図(B)でフラッシュメモリ外部から、物理ブロック1403にすでに書き込まれているデータの先頭の2KB分に対して上書きデータが書き込まれるときには、データはまずページバッファ1402に格納され、その後消去済みの物理ブロック、ここでは物理ブロック1403の先頭ページPP0に書き込まれる。
In FIG. 5B, when overwriting data is written from the outside of the flash memory to the first 2 KB of data already written in the
同図(C)は、外部からの上書きが2KBだけであった場合、物理ブロック1404のPP0は物理ブロック1403のPP0に書き込まれたデータによって無効になっているが、物理ブロック1404のPP1〜PP63は有効なデータである。この有効なデータを同図(B)で書き込みが行われた物理ブロック1403にコピーしてひとつの物理ブロックに有効なデータを集めるために物理ブロック1403のPP1〜PP63のデータを物理ブロック1404のPP1〜PP63に1ページずつコピーする。このときの1ページ分コピーするときのタイミングチャートが図15である。
In FIG. 6C, when overwriting from outside is only 2 KB, PP0 of the
図15において、制御信号はフラッシュメモリ外部からフラッシュメモリを制御するための信号線によるコマンドやアドレス入力について示しており、レディ/ビジーはフラッシュメモリのメモリセルへのデータの書き込みやメモリセルからのデータの読み出しを実行している期間をフラッシュメモリ外部に出力している信号で“L”でフラッシュメモリがビジー(データの書き込み/読出し中)を示している。ページをコピーするにはまず時間t1501でコピーリードコマンドを発行してからコピーリードアドレスを指定する。ここでは物理ブロック1404の物理ページPP1のアドレスを指定するとする。すると時間t1502でフラッシュメモリは物理ブロック1404の物理ページPP1からデータを読み出してページバッファ1402にデータを転送する期間をビジーとして外部に出力する。フラッシュメモリからのビジーが解除されると時間t1503からコピーライト開始コマンドとコピーライトアドレスの指定とコピーライト実行コマンドを発行する。ここで指定するアドレスは物理ブロック1403のPP1を指定する。すると時間t1504でフラッシュメモリはページバッファ1402のデータを物理ブロック1403の物理ページPP1に書き込む。書き込み処理に必要な期間をビジーとして外部に出力する。フラッシュメモリからのビジーが解除された時間t1505で1ページ分のデータのコピーが終了する。PP1〜PP63までデータをコピーするためにはこの処理を63回繰り返す。
In FIG. 15, a control signal indicates a command or address input by a signal line for controlling the flash memory from the outside of the flash memory, and ready / busy indicates data writing to the memory cell of the flash memory or data from the memory cell. A signal output to the outside of the flash memory during the period of reading is indicated as “L”, indicating that the flash memory is busy (data writing / reading). To copy a page, first issue a copy read command at time t1501, and then specify a copy read address. Here, it is assumed that the address of the physical page PP1 of the
そして最後に図14(D)で物理ブロック1404を物理消去することによってデータのコピー処理を完了する。
Finally, the data copy processing is completed by physically erasing the
しかしながら、このようにコピーするデータをフラッシュメモリの外部に出力したり、また外部からデータを入力することなくデータのコピーが行えるコピーバック機能は異なるフラッシュメモリ間では使用することができない。 However, the copy-back function that can output the data to be copied outside the flash memory or can copy the data without inputting the data from the outside cannot be used between different flash memories.
コピーバック機能を使用しないデータのコピーについて図16,17を用いて簡単に説明する。図16はメモリーカード内部の構成を示した図で、2つのフラッシュメモリ1604,1607とフラッシュメモリ1604,1607を制御するコントローラ1601からなる。コントローラ1601にはデータをコピーするときに使用する容量が2KB+64Bの退避バッファ1602とメモリーカード外部からのデータを読み書きするときに使用する容量2KBのページバッファ1603がある。フラッシュメモリ1604にはページバッファ1605と複数の物理ブロックがあり、そのうちあるひとつのデータが書き込み済みの物理ブロックを1606とし、フラッシュメモリ1607にはページバッファ1608と複数の物理ブロックがあり、そのうちあるひとつの消去済みの物理ブロックを1609としている。
Data copying that does not use the copyback function will be briefly described with reference to FIGS. FIG. 16 is a diagram showing the internal configuration of the memory card, which includes two
図16(A)に示す状態は、物理ブロック1606にデータが書き込み済みで、物理ブロック1609が消去済みである。
In the state shown in FIG. 16A, data has been written to the
同図(B)でメモリーカード外部から、物理ブロック1606にすでに書き込まれているデータの先頭の2KB分に対して上書きデータが書き込まれるときには、データはまずページバッファ1603に格納される、その後コントローラ1601のページバッファ1603からフラッシュメモリ1607のページバッファ1608にデータがコピーされ、消去済みの物理ブロック、ここでは物理ブロック1609の先頭ページPP0に書き込まれる。
In FIG. 5B, when overwriting data is written from the outside of the memory card to the first 2 KB of data already written in the
同図(C)外部からの上書きが2KBだけであった場合、物理ブロック1606のPP0は物理ブロック1609のPP0に書き込まれたデータによって無効になっているが、物理ブロック1606のPP1〜PP63は有効なデータである。この有効なデータを同図(B)で書き込みが行われた物理ブロック1609にコピーしてひとつの物理ブロックに有効なデータを集めるために物理ブロック1606のPP1〜PP63のデータを物理ブロック1609のPP1〜PP63に1ページずつコピーする。このときの1ページ分コピーするときのタイミングチャートが図17である。
(C) When the overwriting from the outside is only 2 KB, PP0 of the
図17において制御信号はコントローラがフラッシュメモリを制御するための信号線によるコマンドやアドレス入力について示しており、レディ/ビジーはフラッシュメモリのメモリセルへのデータの書き込みやメモリセルからのデータの読み出しを実行している期間をコントローラに出力している信号で“L”でフラッシュメモリがビジー(データの書き込み/読出し中)を示している。ページをコピーするにはまず時間t1701でフラッシュメモリ1604にリードコマンドを発行してからリードアドレスを指定する。ここでは物理ブロック1606の物理ページPP1のアドレスを指定するとする。すると時間t1702でフラッシュメモリ1604は物理ブロック1606の物理ページPP1からデータを読み出してページバッファ1605にデータを転送する期間をビジーとして外部に出力する。フラッシュメモリ1604からのビジーが解除されると時間t1703からコントローラ1601はフラッシュメモリ1604からデータを読み出し転送して退避バッファ1602に格納する。次に時間t1704でライト開始コマンド発行とライトアドレスの指定を行う。ここで指定するアドレスは物理ブロック1609のPP1を指定する。それから退避バッファ1602からフラッシュメモリ1607のページバッファ1608へとデータを書込み転送し、転送終了後ライト実行コマンドを発行する。すると時間t1705でフラッシュメモリ1607はページバッファ1608のデータを物理ブロック1609の物理ページPP1に書き込む。書き込み処理に必要な期間をビジーとして外部に出力する。フラッシュメモリからのビジーが解除された時間t1706で1ページ分のデータのコピーが終了する。PP1〜PP63までデータをコピーするためにはこの処理を63回繰り返す。
In FIG. 17, a control signal indicates a command or address input by a signal line for the controller to control the flash memory, and ready / busy indicates data writing to the memory cell of the flash memory or data reading from the memory cell. The signal output to the controller during the execution period is “L”, indicating that the flash memory is busy (data writing / reading). To copy a page, first issue a read command to the
そして最後に図16(D)で物理ブロック1606を物理消去することによってデータのコピー処理を完了する。
Finally, the
このようにフラッシュメモリ間でデータのコピーを行う際には、コピー元のデータのあるフラッシュメモリからコントローラへのデータの読出し転送と、コントローラからコピー先へフラッシュメモリへのデータの書き込み転送が必要となり。処理時間が増大する。 When copying data between flash memories in this way, it is necessary to read and transfer data from the flash memory that contains the copy source data to the controller and to write and transfer data from the controller to the copy destination. . Processing time increases.
また同じフラッシュメモリ内においてもコピーバック機能を使用することができるフラッシュメモリの物理ブロックのアドレスが制限されていることがある。その場合にも、同じフラッシュメモリ内部におけるデータのコピー処理において、フラッシュメモリからコントローラへのデータの読出し転送と、コントローラからフラッシュメモリへのデータの書き込み転送が必要となり。処理時間が増大する。
従来の不揮発性記憶装置の書き込み方法においては、不揮発性メモリの消去単位よりも小さなデータを書き込む際に行われるコピーバック機能を用いたデータのコピー動作において、コピーバック機能を使用することができるかどうかを判断する必要があった。 In the conventional nonvolatile storage device writing method, can the copyback function be used in the data copy operation using the copyback function performed when writing data smaller than the erase unit of the nonvolatile memory? It was necessary to judge whether.
上記課題を解決するために本発明の不揮発性記憶装置の書込み方法は、不揮発性メモリとコントローラからなる不揮発性記憶装置の書き込み方法であって、前記不揮発性メモリは、複数の領域からなり、前記領域は独立して消去可能な複数の物理ブロックと少なくとも1つの揮発性メモリであるページバッファからなり、前記物理ブロックは、独立して書込み可能な複数の物理ページからなり、前記不揮発性メモリはまた、同一の前記領域内における任意の2つの物理ブロックを第1の物理ブロックと第2の物理ブロックとしたときに、前記第1の物理ブロックの任意の物理ページからページバッファに読み出したデータを前記第2の物理ブロックの任意のページに書き込みを行うコピーバック機能を有し、前記コントローラは不揮発性記憶装置外部からのアドレスを指定したデータの書き込みにおいて、前記アドレスに対応するデータがすでに書き込まれている物理ブロックの存在する領域を確定する第1のステップと、前記確定した領域内にある消去済みの物理ブロックに対して前記データを書き込む第2のステップからなる In order to solve the above-described problem, a nonvolatile memory device writing method according to the present invention is a nonvolatile memory device writing method including a nonvolatile memory and a controller, and the nonvolatile memory includes a plurality of regions, and The area comprises a plurality of independently erasable physical blocks and at least one volatile memory page buffer, the physical block comprises a plurality of independently writable physical pages, and the non-volatile memory is also When any two physical blocks in the same area are a first physical block and a second physical block, the data read from any physical page of the first physical block to the page buffer is A copy back function for writing to any page of the second physical block, the controller storing non-volatile memory In writing data designating an address from the outside, a first step of determining an area where a physical block in which data corresponding to the address has already been written exists, and an erased data in the determined area Consists of a second step of writing the data to the physical block
本発明の不揮発性記憶装置の書込み方法によれば、フラッシュメモリのコピーバック機能を使用することが可能な範囲から書込み先物理ブロックを検索するので、データコピー時にコピーバック機能を使用可能かどうかの判定を行うこと無しに必ずコピーバック機能を使用してデータをコピーすることができる。 According to the nonvolatile memory device writing method of the present invention, the write destination physical block is searched from a range where the flash memory copy back function can be used, so whether or not the copy back function can be used during data copy. Data can always be copied using the copyback function without making a determination.
本発明の実施の形態における不揮発性記憶装置の書込み方法について図1〜5を用いて説明する。 A writing method of the nonvolatile memory device according to the embodiment of the present invention will be described with reference to FIGS.
(実施の形態1)
図1は、本発明の実施の形態1による不揮発性記憶装置と、それにつながる外部のホスト機器について示したブロック図である。
(Embodiment 1)
FIG. 1 is a block diagram showing a nonvolatile memory device according to
図1において、101は不揮発性記憶装置、102は外部ホストである。不揮発性記憶装置101は、103のコントローラと104のフラッシュメモリからなる。
In FIG. 1, 101 is a non-volatile storage device, and 102 is an external host. The
フラッシュメモリ104は、その中に、1GbitのフラッシュメモリチップA110と、1GbitのフラッシュメモリチップB111の2つのフラッシュメモリチップとを有し、2つのフラッシュメモリチックをひとつのパッケージにしている。
The
図2にフラッシュメモリチップA110の詳細を示す。フラッシュメモリチップA110はPB0〜PB1023の合計1024個の物理ブロック201からなる。各々の物理ブロック201がフラッシュメモリ104における消去単位であり、容量はそれぞれユーザデータ領域として128KB(1024Kbit)を持ち、管理領域として4KB(32Kbit)を持つ。なお、図2ではデータ領域の容量値のみを示している。
FIG. 2 shows details of the flash memory chip A110. The flash memory chip A110 includes a total of 1024
図3に物理ブロック201の詳細を示す。物理ブロック201はPP0〜PP63の合計64個の物理ページ301からなる。各々の物理ページ301がフラッシュメモリ104における書き込み単位であり、容量はそれぞれユーザデータ領域として2KB(2048bit)を持ち、管理領域として64B(512bit)を持つ。
FIG. 3 shows details of the
なお、フラッシュメモリチップB111はフラッシュメモリチップA110と同じ構成である。 The flash memory chip B111 has the same configuration as the flash memory chip A110.
フラッシュメモリチップA110とフラッシュメモリチップB111は同一の半導体パッケージ内に封止されている。例えばそれは図4に示すようにフラッシュメモリチップA110とフラッシュメモリチップB111とを重ねてひとつのパッケージに封止したものであったり、また図5のようにはフラッシュメモリチップA110とフラッシュメモリチップB111とを背中合わせの状態で封止したものである。 The flash memory chip A110 and the flash memory chip B111 are sealed in the same semiconductor package. For example, as shown in FIG. 4, the flash memory chip A110 and the flash memory chip B111 are stacked and sealed in one package, or as shown in FIG. 5, the flash memory chip A110 and the flash memory chip B111 Are sealed in a back-to-back state.
フラッシュメモリチップA110とフラッシュメモリチップB111は共にコピーバック機能を備えており、それぞれ同一のフラッシュメモリチップ内においては任意の物理ブロック201から異なる任意の物理ブロック201へのコピーバックを行うことが可能である。しかし、異なるフラッシュメモリチップへのコピーバック、即ちフラッシュメモリチップA110からフラッシュメモリチップB111へのコピーバックまたはフラッシュメモリチップB111からフラッシュメモリチップA110へのコピーバックを行うことが出来ない。
Both the flash memory chip A110 and the flash memory chip B111 have a copy back function, and can copy back from an arbitrary
結果としてフラッシュメモリ104で考えた場合、コピーバック機能が使用できるコピー先の物理ブロック201の範囲はコピー元の物理ブロック201の位置によって制限されることになる。
As a result, when the
一方、コントローラ103は、外部ホスト102とフラッシュメモリ104との間でフラッシュメモリ104から外部ホスト102へのデータ転送(不揮発性記憶装置101からの読み出し動作)と外部ホスト102からフラッシュメモリ104へのデータ転送(不揮発性記憶装置101への書き込み動作)を制御する。コントローラ103は、105の制御回路と、106のページバッファと、107の退避バッファと、108のアドレス変換テーブルと、109のエントリテーブルからなる。ここで、制御回路105はコントローラ103の動作を制御するものである。
On the other hand, the
ページバッファ106は、外部ホスト102とフラッシュメモリ104間のデータ転送時に一時的にデータを保存するための揮発性メモリによって構成され、その容量は少なくとも物理ページ301に含まれるユーザデータの単位を備える。本実施の形態においては、フラッシュメモリ104のユーザデータの書き込み単位である2KBを備える。
The
退避バッファ107は、フラッシュメモリ104のある物理ブロック201のある物理ページ301からユーザデータを読み出して、読み出しを行ったブロックとは異なる物理ブロック201の物理ページ301にユーザデータをコピーするために一時的にデータを保存するためのものであり、例えば揮発性メモリによって構成され、その容量は少なくとも物理ページ301に含まれるユーザデータの単位を備える。本実施の形態においては、フラッシュメモリ104のユーザデータの書き込み単位である2KBを備える。
The save
アドレス変換テーブル108は、外部ホスト102が読み出し、または書き込みの対象として不揮発性記憶装置101に対して指定する論理アドレスをフラッシュメモリ104の物理アドレスに変換するためのテーブルであり、例えば揮発性メモリによって構成される。論理アドレスをアドレス変換テーブルのアドレス値とした場合に、そのアドレス位置のデータとして物理アドレスが格納される。本発明の実施の形態においては、物理ブロック201単位で論理アドレスを物理アドレスに変換するので、1024×2個の物理ブロック201からひとつを指定するために必要な11bitのデータを物理ブロック201の個数である2048ワード備える必要があり、従ってアドレス変換テーブル108の容量は2.75KBとなる。
The address conversion table 108 is a table for converting a logical address designated to the
エントリテーブル109は、フラッシュメモリ104における書き込み可能な消去済みブロック201を示すためのテーブルであり、揮発性メモリによって構成される。物理ブロック201単位で消去済みを表す「1」、またはユーザデータ書き込み済みを表す「0」の1bitのデータを持つ必要があり、従ってエントリテーブル109の容量は物理ブロック201の個数1024×2個と等しいビット容量256B(2048bit)となる。
The entry table 109 is a table for indicating a writable erased
フラッシュメモリにデータを書き込むことのできる消去済みの物理ブロックは、エントリテーブル109のデータ“1”を検索して特定する。 The erased physical block in which data can be written to the flash memory is specified by searching for data “1” in the entry table 109.
図6はエントリテーブル109の構成を示した図である。256Bの容量のエントリテーブルを16bit×128ワードで構成して、下位の8ビットにあたるbit0〜7の範囲はフラッシュメモリチップA110に対応させて、上位の8ビットに当たるbit8〜15の範囲はフラッシュメモリチップB111に対応させている。
FIG. 6 is a diagram showing the configuration of the entry table 109. An entry table having a capacity of 256 B is composed of 16 bits × 128 words, the range of
従って、フラッシュメモリチップA110の物理ブロックPB0はアドレス0のbit0に対応し、アドレス1のbit0はフラッシュメモリチップA110の物理ブロックPB8に対応する。そして、フラッシュメモリチップA110の物理ブロックPB1023はアドレス127のbit7に対応する。
Accordingly, the physical block PB0 of the flash memory chip A110 corresponds to bit0 of
このようなエントリテーブル109の構成をとることにより下位ビット(bit0〜7)に対応する物理ブロックからコピーバック機能を使用してデータをコピーすることが可能な物理ブロックの情報はエントリテーブル109の下位ビットにのみ存在し、上位ビット(bit8〜15)に対応する物理ブロックからコピーバック機能を使用してデータをコピーすることが可能な物理ブロックの情報はエントリテーブル109の上位ビットにのみ存在する。
By adopting such a configuration of the entry table 109, information on the physical block that can copy data from the physical block corresponding to the lower bits (
図7は書込み先となる物理ブロックを決定するためのフローチャートである。 FIG. 7 is a flowchart for determining a physical block as a write destination.
外部ホスト102が論理アドレスを指定して不揮発性記憶装置101にデータを書込む際に、制御回路105は書込み先となるフラッシュメモリ104の物理ブロックアドレスを決定する必要がある。
When the
まず、ステップ701で、外部ホスト102が指定する論理アドレスを基にして書込み対象となるフラッシュメモリチップを決定する必要がある。ここでは外部ホスト102が指定する論理アドレスを物理ブロック201と同じ容量値である128KB単位のアドレスに直したときに最下位ビットが「0」であるか「1」であるかによって書込み対象のフラッシュメモリチップを決定する。最下位ビットが「0」の場合はフラッシュメモリチップA110が書込み対象のフラッシュメモリチップであり、最下位ビットが「1」の場合はフラッシュメモリチップB111が書込み対象のフラッシュメモリチップとなる。例として、論理アドレス先頭のアドレス「0」から先頭の128KBはフラッシュメモリチップA110に、次の128KBはフラッシュメモリチップB111に書き込まれることとなる。
First, in
次にステップ702でエントリテーブル109のうち書込み対象フラッシュメモリチップに対応する領域を検索して消去済みの物理ブロックアドレスを取得する。書込み対象フラッシュメモリチップがフラッシュメモリチップA110の時にはエントリテーブル109の下位の8ビットにあたるbit0〜7だけを対象として消去済み物理ブロック201を検索する。書込み対象フラッシュメモリチップがフラッシュメモリチップB111の時にはエントリテーブル109の上位の8ビットにあたるbit8〜15だけを対象として消去済み物理ブロック201を検索する。
In
上記のように書込み先となるフラッシュメモリチップを決定するので、任意の論理アドレスのデータをコピーする際には当然のことながらコピー元の論理アドレスとコピー先の論理アドレスは同じものとなる。同じ論理アドレスを基にして図7に示した書込み先決定フローで書き込み先となる消去済み物理ブロック201を取得したら、当然それは同じフラッシュメモリチップにあるはずなので、結果として任意の論理アドレスのデータをコピーする際に必ずコピーバック処理を行うことが可能となる。
Since the flash memory chip to be written to is determined as described above, when copying data of an arbitrary logical address, the logical address of the copy source and the logical address of the copy destination are naturally the same. When the erased
上記実施の形態において、エントリテーブルの構成として、図6を示したが、異なる構成でも実現可能である。図8に、上記実施の形態とは異なる形でのエントリテーブル109の構成を示す。 In the above embodiment, FIG. 6 is shown as the configuration of the entry table, but a different configuration can be realized. FIG. 8 shows the configuration of the entry table 109 in a form different from the above embodiment.
図8は256Bの容量のエントリテーブルを16bit×128ワードで構成して、前半の64ワード(アドレス0〜63)にあたる範囲はフラッシュメモリチップA110に対応させて、後半の64ワード(アドレス64〜127)にあたる範囲はフラッシュメモリチップB111に対応させている。
In FIG. 8, an entry table with a capacity of 256 B is configured by 16 bits × 128 words, and the range corresponding to the first 64 words (
従って、フラッシュメモリチップA110の物理ブロックPB0はアドレス0のbit0に対応し、アドレス1のbit0はフラッシュメモリチップA110の物理ブロックPB16に対応する。そして、フラッシュメモリチップA110の物理ブロックPB1023はアドレス63のbit7に対応する。
Therefore, the physical block PB0 of the flash memory chip A110 corresponds to bit0 of
図8の構成のエントリテーブル109を使用した場合のステップ702での検索方法は、書込み対象フラッシュメモリチップがフラッシュメモリチップA110の時にはエントリテーブル109の前半の64ワード(アドレス0〜63)だけを対象として消去済み物理ブロック201を検索する。書込み対象フラッシュメモリチップがフラッシュメモリチップB111の時にはエントリテーブル109の後半の64ワード(アドレス64〜127)だけを対象として消去済み物理ブロック201を検索する。
When the entry table 109 having the configuration shown in FIG. 8 is used, the search method in
(実施の形態2)
上述した実施の形態1では、書込み対象論理アドレスを基にして書込み対象となるフラッシュメモリチップを決定することによって、必ずコピーバック処理が可能な物理ブロック201のアドレスを取得できるようにしているが、書込み対象となるフラッシュメモリチップを決定しない場合でもコピー元である物理ブロック201からコピーバック処理が可能であるフラッシュメモリチップに対応するエントリテーブル109の範囲から優先的に消去済み物理ブロック201を検索することにより、必ずコピーバック処理が可能な物理ブロック201のアドレスを取得することができる。
(Embodiment 2)
In the first embodiment described above, by determining the flash memory chip to be written on the basis of the logical address to be written, the address of the
具体的には実施の形態1での図7でのフローチャートの代わりに、図9に示す書き込み先決定フローを用いて説明する。 Specifically, description will be made using the write destination determination flow shown in FIG. 9 instead of the flowchart in FIG. 7 in the first embodiment.
ステップ901ではまず書き込み対象となる論理アドレスを基にアドレス変換テーブル108からその論理アドレスの既書き込みデータの存在する物理ブロックアドレスを取得する。
In
次にステップ902ではステップ901で取得した物理ブロックアドレスからコピーバック機能を使用してデータをコピーすることが可能な物理ブロック群に対応するエントリテーブル109の領域を決定する。
In
最後にステップ903ではステップ902で決定した領域を検索することで消去済みの物理ブロックアドレスを取得する。
Finally, in
以上のフローで書込み先となるフラッシュメモリチップを決定するので、任意の論理アドレスのデータをコピーする際に、必ずコピー元の物理ブロックとコピー先の物理ブロックとはコピーバック機能を使用してデータをコピーすることが可能となる。 Since the flash memory chip to be written to is determined by the above flow, when copying data at an arbitrary logical address, the copy source physical block and the copy destination physical block must always be copied using the copy back function. Can be copied.
なお、実施の形態2では書き込み先を決定するフローが異なること以外は実施の形態1とまったく同じ構成である。 The second embodiment has the same configuration as that of the first embodiment except that the flow for determining the write destination is different.
(実施の形態3)
上述した実施の形態1および実施の形態2では、フラッシュメモリのチップ内部の物理ブロック間においてはコピーバック機能が使用できる場合について説明したが、フラッシュメモリの種類によってはフラッシュメモリのチップ内部の物理ブロック間においてもコピーバック機能が使用できない場合もある。そのケースについて説明する。
(Embodiment 3)
In the first embodiment and the second embodiment described above, the case where the copy back function can be used between the physical blocks inside the flash memory chip has been described. However, depending on the type of the flash memory, the physical block inside the flash memory chip In some cases, the copy back function may not be used. The case will be described.
図10は、本発明の実施の形態3による不揮発性記憶装置と、それにつながる外部のホスト機器について示したブロック図である。
FIG. 10 is a block diagram showing a nonvolatile memory device according to
図10において、図1と同じものについては図1と同じ番号を付している。図1とはフラッシュメモリ1001とエントリテーブル1004が異なる。チップ内部の物理ブロック間においてもコピーバック機能に制限のあるフラッシュメモリチップを2チップ使用してフラッシュメモリ1001を構成している。フラッシュメモリ1001は、その中に、1GbitのフラッシュメモリチップC1002と、1GbitのフラッシュメモリチップD1003の2つのフラッシュメモリチップとを有し、2つのフラッシュメモリチックをひとつのパッケージにしている。
10, the same components as those in FIG. 1 are given the same numbers as those in FIG. The
図11にフラッシュメモリチップC1002の詳細を示す。フラッシュメモリチップC1002はPB0〜PB1023の合計1024個の物理ブロック1101からなる。各々の物理ブロック1101がフラッシュメモリ104における消去単位であり、容量はそれぞれユーザデータ領域として128KB(1024Kbit)を持ち、管理領域として4KB(32Kbit)を持つ。物理ブロック1101はPB0〜PB511の前半の物理ブロックと、PB512〜PB1023の後半の物理ブロックとに分けられ、それぞれ前半の物理ブロックに対してはページバッファ1102が、後半の物理ブロックに対してはページバッファ1103が関連付けられ、前半の物理ブロックは前半の物理ブロック間でのみページバッファ1102を介することでコピーバック機能を使用することが可能で、後半の物理ブロックは後半の物理ブロック間でのみページバッファ1103を介することでコピーバック機能を使用することができる。フラッシュメモリチップD1103もフラッシュメモリチップC1002と同じ構成である。
FIG. 11 shows details of the flash memory chip C1002. The flash memory chip C1002 is composed of a total of 1024 physical blocks 1101 of PB0 to PB1023. Each physical block 1101 is an erasing unit in the
図12にエントリテーブル1004の構成を改めて示すが、エントリテーブル1004の構成は図6と似ている。ただし図6ではエントリテーブルがフラッシュメモリチップによって下位ビット(bit0〜7)と上位ビット(bit8〜15)の2つの領域に分けられていたが、図12ではフラッシュメモリ下位ビット(bit0〜7)と上位ビット(bit8〜15)の区別に加えて前半グループ(Address0〜63)と後半グループ(Address64〜127)とに区別でき、結果としてフラッシュメモリチップC1102のPB0〜511が、下位ビット(bit0〜7)で前半グループ(Address0〜63)の領域。フラッシュメモリチップC1102のPB512〜1023が、下位ビット(bit0〜7)で後半グループ(Address64〜127)の領域。フラッシュメモリチップD1103のPB0〜511が、上位ビット(bit8〜15)で前半グループ(Address0〜63)の領域。フラッシュメモリチップD1103のPB512〜1023が、上位ビット(bit8〜15)で後半グループ(Address64〜127)の領域。の4つの領域に分けられる。
FIG. 12 shows the configuration of the entry table 1004 again. The configuration of the entry table 1004 is similar to that of FIG. However, in FIG. 6, the entry table is divided into two areas of lower bits (
このようなエントリテーブル1004の構成において図7のフローチャートのステップ701で、実施の形態1ではエントリテーブル領域を2つの領域から選択して決定していたところを本実施の形態においては4つの領域から選択して決定する。
In the configuration of such an entry table 1004, in
また図9のフローチャートのステップ902で、実施の形態2ではエントリテーブル領域を2つの領域から選択して決定していたところを本実施の形態においては4つの領域から選択して決定する。
Further, in
そうすることで、フラッシュメモリチップ内においてコピーバック機能の使用できる物理ブロックの領域が限定されている場合においても、必ずコピー元の物理ブロックからコピーバック機能を使用してデータをコピーできる領域からコピー先の物理ブロックを決定するので、任意の論理アドレスのデータをコピーする際に、必ずコピー元の物理ブロックとコピー先の物理ブロックとはコピーバック機能を使用してデータをコピーすることが可能となる。 By doing so, even if the physical block area where the copyback function can be used is limited in the flash memory chip, the data must be copied from the copy source physical block using the copyback function. Since the destination physical block is determined, when copying data at an arbitrary logical address, the copy source physical block and the copy destination physical block can always be copied using the copy back function. Become.
(実施の形態4)
上述した実施の形態1〜3では、複数のフラッシュメモリチップを対象とした場合について説明したが、フラッシュメモリのチップ内部の物理ブロック間においてもコピーバック機能が使用できない場合には単一のフラッシュメモリチップを対象としても本発明の考え方を適用できる。そのケースについて説明する。
(Embodiment 4)
In the first to third embodiments described above, the case where a plurality of flash memory chips are targeted has been described. However, when the copyback function cannot be used between physical blocks inside the flash memory chip, a single flash memory is used. The concept of the present invention can also be applied to a chip. The case will be described.
図13は、本発明の実施の形態3による不揮発性記憶装置と、それにつながる外部のホスト機器について示したブロック図である。
FIG. 13 is a block diagram showing a nonvolatile memory device according to
図13において、図1と同じものについては図1と同じ番号を付している。図1とはフラッシュメモリ1301とエントリテーブル1303とアドレス変換テーブル1304が異なる。チップ内部の物理ブロック間においてもコピーバック機能に制限のあるフラッシュメモリチップを1チップ使用してフラッシュメモリ1301を構成している。フラッシュメモリ1301は、その中に、1GbitのフラッシュメモリチップC1302を有している。
In FIG. 13, the same reference numerals as those in FIG. The
フラッシュメモリチップC1002の詳細は図11に示されたものと同じである。 The details of the flash memory chip C1002 are the same as those shown in FIG.
エントリテーブル1304は特に図示しないが、図12の下位ビット(bit0〜7)だけを抽出したものと同じである。エントリテーブル1304は物理ブロックPB0〜511が対応する前半グループ(Address0〜63)の領域と、物理ブロックPB512〜1023が対応する後半グループ(Address64〜127)の2つの領域に分けられる。
Although not specifically shown, the entry table 1304 is the same as that obtained by extracting only the lower bits (
このようなエントリテーブル1303の構成において図7のフローチャートのステップ701で、および図9のフローチャートのステップ902を適用することで、フラッシュメモリチップ内においてコピーバック機能の使用できる物理ブロックの領域が限定されている場合においても、必ずコピー元の物理ブロックからコピーバック機能を使用してデータをコピーできる領域からコピー先の物理ブロックを決定するので、任意の論理アドレスのデータをコピーする際に、必ずコピー元の物理ブロックとコピー先の物理ブロックとはコピーバック機能を使用してデータをコピーすることが可能となる。
By applying
以上、本発明の実施の形態によれば、コピー元となる物理ブロック201からコピーバック処理が可能な範囲にある物理ブロック201に対応する領域のエントリテーブルから優先的に消去済み物理ブロック201を検索することによって、コピーバック処理が可能な物理ブロック201を書込み対象として選ぶことが出来る。また、論理アドレスによって書込み対象となる物理ブロック201のアドレス範囲を限定することにより、確実にコピーバック処理が可能な物理ブロック201を書込み対象として選ぶことが出来る。
As described above, according to the embodiment of the present invention, the erased
以上のように、本発明に係わる不揮発性記憶装置の書き込み方法は、音楽データや映像データを取り扱う機器、例えばデジタルカメラやデジタルビデオカメラ等の携帯機器のデータを記憶する記憶装置に用いる書き込み方法としての利用に適している。 As described above, the writing method of the nonvolatile storage device according to the present invention is a writing method used for a storage device that stores data of a device that handles music data or video data, for example, a portable device such as a digital camera or a digital video camera. Suitable for use.
101 不揮発性記憶装置
102 外部ホスト
103 コントローラ
104 フラッシュメモリ
105 制御回路
106 ページバッファ
107 退避バッファ
108 アドレス変換テーブル
109 エントリテーブル
110 フラッシュメモリチップA
111 フラッシュメモリチップB
201 物理ブロック
202 ページバッファ
301 物理ページ
1001 フラッシュメモリ
1002 フラッシュメモリチップC
1003 フラッシュメモリチップD
1004 エントリテーブル
1101 物理ブロック
1102,1103 ページバッファ
1301 フラッシュメモリ
1302 フラッシュメモリチップC
1303 エントリテーブル
1304 アドレス変換テーブル
1401 フラッシュメモリ
1402 ページバッファ
1403,1404 物理ブロック
1601 コントローラ
1602 退避バッファ
1603 ページバッファ
1604,1607 フラッシュメモリ
1605,1608 ページバッファ
1606,1609 物理ブロック
DESCRIPTION OF
111 Flash memory chip B
201
1003 Flash memory chip D
1004 Entry table 1101
1303 Entry table 1304 Address translation table 1401
Claims (5)
前記不揮発性メモリは、複数の領域からなり、前記領域は独立して消去可能な複数の物理ブロックと少なくとも1つの揮発性メモリであるページバッファからなり、前記物理ブロックは、独立して書込み可能な複数の物理ページからなり、
前記不揮発性メモリはまた、同一の前記領域内における任意の2つの物理ブロックを第1の物理ブロックと第2の物理ブロックとしたときに、前記第1の物理ブロックの任意の物理ページからページバッファに読み出したデータを前記第2の物理ブロックの任意のページに書き込みを行うコピーバック機能を有し、
前記コントローラは、不揮発性記憶装置外部からのアドレスを指定したデータの書き込みにおいて、前記アドレスに対応するデータがすでに書き込まれている物理ブロックの存在する領域を確定する第1のステップと、前記確定した領域内にある消去済みの物理ブロックに対して前記データを書き込む第2のステップからなることを特徴とする不揮発性記憶装置の書込み方法。 A writing method for a nonvolatile memory device comprising a nonvolatile memory and a controller,
The non-volatile memory includes a plurality of areas, and the areas include a plurality of independently erasable physical blocks and a page buffer that is at least one volatile memory, and the physical blocks are writable independently. Consists of multiple physical pages
The nonvolatile memory also includes a page buffer from an arbitrary physical page of the first physical block when any two physical blocks in the same area are a first physical block and a second physical block. A copy-back function of writing the data read into the arbitrary page of the second physical block;
In the writing of data specifying an address from the outside of the non-volatile storage device, the controller determines a region where a physical block in which data corresponding to the address has already been written exists, and the determined A writing method for a nonvolatile memory device, comprising a second step of writing the data to an erased physical block in an area.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006055834A JP4910426B2 (en) | 2005-03-03 | 2006-03-02 | Non-volatile memory device writing method |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005058544 | 2005-03-03 | ||
JP2005058544 | 2005-03-03 | ||
JP2006055834A JP4910426B2 (en) | 2005-03-03 | 2006-03-02 | Non-volatile memory device writing method |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2006277736A true JP2006277736A (en) | 2006-10-12 |
JP2006277736A5 JP2006277736A5 (en) | 2009-06-18 |
JP4910426B2 JP4910426B2 (en) | 2012-04-04 |
Family
ID=37212375
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006055834A Expired - Fee Related JP4910426B2 (en) | 2005-03-03 | 2006-03-02 | Non-volatile memory device writing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4910426B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008112335A (en) * | 2006-10-31 | 2008-05-15 | Tdk Corp | Memory controller and flash memory system equipped with memory controller and method for controlling flash memory |
KR100918707B1 (en) | 2007-03-12 | 2009-09-23 | 삼성전자주식회사 | Flash memory-based memory system |
JP2012512469A (en) * | 2008-12-18 | 2012-05-31 | モサイド・テクノロジーズ・インコーポレーテッド | Semiconductor device having main memory unit and auxiliary memory unit requiring preset operation |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11203885A (en) * | 1998-01-09 | 1999-07-30 | Hitachi Ltd | Storage device |
JP2004030784A (en) * | 2002-06-26 | 2004-01-29 | Fujitsu Ltd | Semiconductor storage device |
JP2004342126A (en) * | 1998-02-25 | 2004-12-02 | Lexar Media Inc | Increasing memory performance in flash memory device by simultaneously writing sectors to multiple devices |
-
2006
- 2006-03-02 JP JP2006055834A patent/JP4910426B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11203885A (en) * | 1998-01-09 | 1999-07-30 | Hitachi Ltd | Storage device |
JP2004342126A (en) * | 1998-02-25 | 2004-12-02 | Lexar Media Inc | Increasing memory performance in flash memory device by simultaneously writing sectors to multiple devices |
JP2004030784A (en) * | 2002-06-26 | 2004-01-29 | Fujitsu Ltd | Semiconductor storage device |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008112335A (en) * | 2006-10-31 | 2008-05-15 | Tdk Corp | Memory controller and flash memory system equipped with memory controller and method for controlling flash memory |
JP4569554B2 (en) * | 2006-10-31 | 2010-10-27 | Tdk株式会社 | MEMORY CONTROLLER, FLASH MEMORY SYSTEM HAVING MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD |
KR100918707B1 (en) | 2007-03-12 | 2009-09-23 | 삼성전자주식회사 | Flash memory-based memory system |
US7941586B2 (en) | 2007-03-12 | 2011-05-10 | Samsung Electronics Co., Ltd. | Flash memory device and memory system controlling a copy-back program operation in hardware |
JP2012512469A (en) * | 2008-12-18 | 2012-05-31 | モサイド・テクノロジーズ・インコーポレーテッド | Semiconductor device having main memory unit and auxiliary memory unit requiring preset operation |
Also Published As
Publication number | Publication date |
---|---|
JP4910426B2 (en) | 2012-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8386698B2 (en) | Data accessing method for flash memory and storage system and controller using the same | |
US8055873B2 (en) | Data writing method for flash memory, and controller and system using the same | |
US7773420B2 (en) | Memory card system including NAND flash memory and SRAM/NOR flash memory, and data storage method thereof | |
US20020156988A1 (en) | Memory device | |
JP5090819B2 (en) | Memory card and data storage method | |
US20080028132A1 (en) | Non-volatile storage device, data storage system, and data storage method | |
US20050278480A1 (en) | Method of writing data into flash memory | |
JP2006092019A (en) | Controller, memory card and its control method | |
WO2005103903A1 (en) | Nonvolatile storage system | |
JPWO2005083573A1 (en) | Semiconductor memory device | |
US20090210612A1 (en) | Memory controller, nonvolatile memory device, and nonvolatile memory system | |
JP2007034581A (en) | Memory controller, flash memory system and method for controlling flash memory | |
JP4910426B2 (en) | Non-volatile memory device writing method | |
JP4308780B2 (en) | Semiconductor memory device, memory controller, and data recording method | |
JP2008084184A (en) | Memory controller | |
US20050204115A1 (en) | Semiconductor memory device, memory controller and data recording method | |
US8180951B2 (en) | Memory system and method of controlling the memory system | |
KR100479170B1 (en) | Access control device for memory and method thereof | |
JP2006244017A (en) | Data copy method | |
JP4645043B2 (en) | MEMORY CONTROLLER, NONVOLATILE MEMORY DEVICE, AND NONVOLATILE MEMORY SYSTEM | |
JP4177301B2 (en) | Memory controller, flash memory system, and flash memory control method | |
JP4273038B2 (en) | Memory controller, flash memory system, and flash memory data transfer method | |
JP2008021335A (en) | Nonvolatile storage device, writing method of nonvolatile storage memory and controller | |
JP2005339438A (en) | Memory controller, flash memory system and control method of flash memory | |
KR100490603B1 (en) | Control method and apparatus for operations of flash memory system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090302 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20090414 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090430 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111214 |
|
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: 20111220 |
|
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: 20120102 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150127 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |