JP2008191855A - Semiconductor storage device and memory control method - Google Patents

Semiconductor storage device and memory control method Download PDF

Info

Publication number
JP2008191855A
JP2008191855A JP2007024453A JP2007024453A JP2008191855A JP 2008191855 A JP2008191855 A JP 2008191855A JP 2007024453 A JP2007024453 A JP 2007024453A JP 2007024453 A JP2007024453 A JP 2007024453A JP 2008191855 A JP2008191855 A JP 2008191855A
Authority
JP
Japan
Prior art keywords
data
physical
logical
physical block
segment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007024453A
Other languages
Japanese (ja)
Inventor
Kenichi Nakanishi
健一 中西
Nobuhiro Kaneko
暢宏 金子
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2007024453A priority Critical patent/JP2008191855A/en
Publication of JP2008191855A publication Critical patent/JP2008191855A/en
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

<P>PROBLEM TO BE SOLVED: To further balance the load on each physical block of a nonvolatile memory. <P>SOLUTION: The semiconductor device distributes the update frequency of data to each segment by dividing a logic space within each segment while associating a logic address with a physical block so that the frequency of writing data from external equipment for each segment is balanced, and achieves wear leveling for balancing the load on each physical block. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、不揮発性メモリの各物理ブロックに対する負荷を均一化する半導体記憶装置及びメモリ制御方法に関する。   The present invention relates to a semiconductor memory device and a memory control method for equalizing a load on each physical block of a nonvolatile memory.

近年の半導体記憶装置は、その内部に不揮発性メモリを有しているものがある。不揮発性メモリは、データ記憶領域が複数のブロックに分割されており、ブロック毎にデータの書き込みや消去が行われる。   Some recent semiconductor memory devices have a nonvolatile memory therein. In the nonvolatile memory, a data storage area is divided into a plurality of blocks, and data is written and erased for each block.

一般的に、不揮発性メモリが有する物理ブロックに対するデータの消去回数には上限が設けられており、この上限を超えた物理ブロックはデータを記憶し得ない不良のブロックとして扱われる。そして、このような不揮発性メモリは、不良のブロックの数が所定数以上になると、製品上の仕様により寿命が尽きたものとされ、使用不可能となる。   In general, an upper limit is set for the number of times data is erased from a physical block included in a nonvolatile memory, and a physical block exceeding the upper limit is treated as a defective block that cannot store data. Then, when the number of defective blocks exceeds a predetermined number, such a nonvolatile memory is considered to have reached the end of its life due to the specifications on the product and cannot be used.

このように、特定の物理ブロックばかりにデータの書き込みや消去が行われることにより、特定の物理ブロックの消去回数のみが増加するようになると、特定の物理ブロックが他の物理ブロックよりも早く不良のブロックになってしまう。そして、不良のブロックの数が所定数以上になると、消去回数が少なく、未だデータを記憶することができる物理ブロックを数多く残しているのにも関わらず、不揮発性メモリが使用不可能になってしまう場合があった。   As described above, when data is written or erased only to a specific physical block, and only the number of times the specific physical block is erased increases, the specific physical block becomes defective earlier than the other physical blocks. It becomes a block. When the number of defective blocks exceeds a predetermined number, the nonvolatile memory becomes unusable even though the number of times of erasure is small and there are still many physical blocks that can store data. There was a case.

この問題を解決するために、例えば、次のような手法(以下、これを第1の手法という。)が提案されている。すなわち、第1の手法が適用された半導体記憶装置においては、物理ブロック毎にデータの消去回数をカウントし、この結果を消去管理テーブルに記して管理する。そして、この半導体記憶装置は、消去管理テーブルを適宜参照することにより所定の規定回数に達した物理ブロックを発見すると、この消去管理テーブルに記された全物理ブロックの消去回数を参照することにより、消去回数が最も少ない物理ブロックを特定する。次に、この半導体記憶装置は、規定回数に達した物理ブロックに記憶されているデータを、この特定した消去回数が最も少ない物理ブロックへ移動させる。このように、この第1の手法では、不揮発性メモリの各物理ブロックに対する負荷を均一化(いわゆるウェアレベルリング(Wear Leveling))することにより、不揮発性メモリの使用可能期間を向上させることが可能である(特許文献1参照)。   In order to solve this problem, for example, the following method (hereinafter referred to as the first method) has been proposed. That is, in the semiconductor memory device to which the first method is applied, the number of data erases is counted for each physical block, and the result is recorded in the erase management table and managed. Then, when the semiconductor storage device finds a physical block that has reached a predetermined specified number of times by referring to the erasure management table as appropriate, by referring to the number of erasures of all physical blocks described in the erasure management table, The physical block with the smallest erase count is identified. Next, the semiconductor memory device moves the data stored in the physical block that has reached the specified number of times to the physical block that has the smallest specified number of erasures. As described above, in this first method, it is possible to improve the usable period of the nonvolatile memory by equalizing the load on each physical block of the nonvolatile memory (so-called wear leveling). (See Patent Document 1).

特開2003−203016号公報JP 2003-203016 A

ところで第1の手法が適用された半導体記憶装置は、消去管理テーブルに物理ブロックごとの消去回数(例えば1000回等)を記すので、この消去管理テーブルのデータ量が大きくなってしまう上、上述したようにウェアレベルリングを行う際、消去管理テーブルに記された全物理ブロックの消去回数を参照する処理を実行しなければならないため、その構成を簡易にすることが難しかった。   By the way, the semiconductor memory device to which the first method is applied records the number of times of erasure (for example, 1000 times) for each physical block in the erasure management table. Thus, when performing wear leveling, it is necessary to execute a process of referring to the number of times of erasure of all physical blocks described in the erasure management table, and thus it is difficult to simplify the configuration.

一方、従来の半導体記憶装置では、次のような手法(以下、これを第2の手法という。)も採用されている。この第2の手法は、消去管理テーブル等を必要とせずに半導体記憶装置の構成を簡易化し得るものである。   On the other hand, in the conventional semiconductor memory device, the following method (hereinafter referred to as the second method) is also employed. This second method can simplify the configuration of the semiconductor memory device without requiring an erasure management table or the like.

図12及び図13は、この第2の手法を説明するための図である。図12(A)〜(E)では、不揮発性メモリ中の1つのセグメントSGXを簡略化して示す。実際、この1セグメントSGXは、例えば512個の物理ブロックBK(BK0、BK1、・・・)を有し、各物理ブロックBKには、例えば64ページ分のデータが記憶され得るようになされている(例えば1ページが2[Kbyte]に相当)。   12 and 13 are diagrams for explaining the second method. 12A to 12E, one segment SGX in the nonvolatile memory is shown in a simplified manner. Actually, this one segment SGX has, for example, 512 physical blocks BK (BK0, BK1,...), And each physical block BK can store, for example, 64 pages of data. (For example, one page corresponds to 2 [Kbyte]).

また、図12及び図13では、データを記憶している物理ブロックBKに斜線を施すと共に、データのウェアレベリング処理が実行された物理ブロックBKに網掛けを施しており、またデータウェアレベリング処理の回数が多い物理ブロックBKほど施す網掛けを密にした。   In FIG. 12 and FIG. 13, the physical block BK storing data is shaded and the physical block BK subjected to the data wear leveling process is shaded, and the data wear leveling process is performed. The shading applied to the physical block BK with a larger number of times is made dense.

第2の手法が適用された半導体記憶装置は、図12(A)に示すように、外部から供給されるデータを、データが書き込まれていない空の物理ブロックBK0,BK1,・・・に順次書き込んでいく。   In the semiconductor memory device to which the second method is applied, as shown in FIG. 12A, data supplied from the outside is sequentially transferred to empty physical blocks BK0, BK1,. Write.

その後、外部から例えば物理ブロックBK6に記憶されている64ページ分のデータの内の一部のデータを更新する更新データがこの半導体記憶装置に対して供給されたとする(図12(B))。   Thereafter, for example, update data for updating a part of the data of 64 pages stored in the physical block BK6 is supplied to the semiconductor memory device from the outside (FIG. 12B).

この際、半導体記憶装置は、物理ブロックBK6に記憶されているデータの内、更新対象でないデータ(以下、これを「更新対象外データ」と呼ぶ)を読み出し、読み出した更新対象外データとこの更新データとを、このセグメントSGX中の所定の部分に確保されている空の物理ブロックBK21に対して書き込む(図12(C)中の(a))。そして、この半導体記憶装置は、物理ブロックBK6に記憶されている古いデータを全て消去する(図12(C)中の(b))。この後、外部から、例えば物理ブロックBK3に記憶されているデータの一部を更新する更新データが半導体記憶装置に対して供給されたときも、この半導体記憶装置は同様の処理(図12(D)中の(c)及び(d))を実行する。   At this time, the semiconductor storage device reads data that is not the update target (hereinafter referred to as “non-update target data”) from the data stored in the physical block BK6, and reads the non-update target data and this update. Data is written to an empty physical block BK21 secured in a predetermined portion in the segment SGX ((a) in FIG. 12C). Then, this semiconductor memory device erases all old data stored in the physical block BK6 ((b) in FIG. 12C). Thereafter, when update data for updating a part of the data stored in the physical block BK3 is supplied from the outside to the semiconductor memory device, the semiconductor memory device performs the same processing (FIG. 12D ) (C) and (d)) are executed.

このように、第2の手法が適用された半導体記憶装置は、例えば物理ブロックBK6に記憶されているデータの一部を更新する際、この物理ブロックBK6に一緒に記憶されていたデータを全て他の物理ブロックBK21へ移動するようにしたことにより、物理ブロックBK6ばかりにデータの書込み処理や消去が行われてしまうことをある程度回避することができる。   As described above, when the semiconductor memory device to which the second technique is applied updates, for example, a part of the data stored in the physical block BK6, all the data stored together in the physical block BK6 is changed. By moving to the physical block BK21, it is possible to avoid to some extent that data write processing and erasure are performed only on the physical block BK6.

次に、図13を用いて、この第2の手法におけるデータの書き込み処理の様子を詳細に説明する。実際、このような半導体記憶装置は、論理アドレスと物理ブロックBKに割り当てられた物理アドレスとを対応付けてなるテーブル(以下、これを論理物理変換テーブル)を有しており、これにより、これまで書き込んだ各データの記憶位置を管理している。   Next, the state of the data writing process in the second method will be described in detail with reference to FIG. Actually, such a semiconductor memory device has a table (hereinafter referred to as a logical physical conversion table) in which a logical address and a physical address assigned to a physical block BK are associated with each other. The storage location of each written data is managed.

ここで、図13(A)に示すような状態において、外部から、例えば論理アドレス#0に対応する物理ブロックBK0に記憶されているデータの一部を更新するための更新データが供給されると、半導体記憶装置は、論理物理変換テーブルを参照して論理アドレス#0に対応する物理アドレス#0を認識する。そしてこの半導体記憶装置は、当該認識した物理アドレス#0に基づいて物理ブロックBK0にアクセスし、このアクセスした物理ブロックBK0に記憶されているデータの内、この更新データの更新対象でない更新対象外データを読み出し、この読み出した更新対象外データと更新データとを、このセグメントSGX中の空のブロックBK3に対して書き込む(図13(B))。続いて、半導体記憶装置は、物理ブロックBK0に記憶されている古いデータを全て消去すると共に、論理アドレス#0と物理ブロックBK3の物理アドレス#3とを対応付けるようにして論理物理変換テーブルを更新する。   Here, in the state shown in FIG. 13A, for example, update data for updating a part of the data stored in the physical block BK0 corresponding to the logical address # 0 is supplied from the outside. The semiconductor memory device recognizes the physical address # 0 corresponding to the logical address # 0 with reference to the logical-physical conversion table. Then, the semiconductor memory device accesses the physical block BK0 based on the recognized physical address # 0, and among the data stored in the accessed physical block BK0, the non-update target data that is not the update target of the update data. And the read non-update target data and update data are written to the empty block BK3 in the segment SGX (FIG. 13B). Subsequently, the semiconductor memory device deletes all old data stored in the physical block BK0 and updates the logical-physical conversion table so that the logical address # 0 and the physical address # 3 of the physical block BK3 are associated with each other. .

この後、さらに外部より論理アドレス#0に対応する物理ブロックBK3に記憶されているデータの一部を更新するための更新データが供給されると、半導体記憶装置は、論理物理変換テーブルを参照して論理アドレス#0に対応する物理アドレス#3を認識する。そして、半導体記憶装置は、この認識した物理アドレス#3に基づいてブロックBK3にアクセスし、このアクセスした物理ブロックBK3に記憶されているデータの内、この更新データの更新対象でない更新対象外データを読み出し、この読み出した更新対象外データと更新データとをセグメントSGX中の空の物理ブロックBK6に対して書き込む(図13(C))。続いて、半導体記憶装置は、物理ブロックBK3に記憶されている古いデータを全て消去すると共に、論理アドレス#0と物理ブロックBK6の物理アドレス#6とを対応付けるようにして論理物理変換テーブルを更新する。   Thereafter, when update data for updating a part of data stored in the physical block BK3 corresponding to the logical address # 0 is supplied from the outside, the semiconductor memory device refers to the logical-physical conversion table. Thus, the physical address # 3 corresponding to the logical address # 0 is recognized. Then, the semiconductor memory device accesses the block BK3 based on the recognized physical address # 3, and among the data stored in the accessed physical block BK3, the non-update target data that is not the update target of the update data. The read-out non-update target data and the update data are written to the empty physical block BK6 in the segment SGX (FIG. 13C). Subsequently, the semiconductor memory device deletes all old data stored in the physical block BK3 and updates the logical-physical conversion table so that the logical address # 0 and the physical address # 6 of the physical block BK6 are associated with each other. .

このように、第2の手法が適用された半導体記憶装置では、例えば論理アドレス#0に対応するデータばかりが頻繁に更新される場合であって、この他の論理アドレスに対応するデータがほとんど更新されない場合、図13(D)に示すように、ウェアレベリング処理が実行される物理ブロックBKがある程度固定されてしまう(この場合、物理ブロックBK0、BK3、BK6、BK10、BK13、BK19)。   As described above, in the semiconductor memory device to which the second method is applied, for example, only data corresponding to the logical address # 0 is frequently updated, and data corresponding to the other logical addresses is almost updated. Otherwise, as shown in FIG. 13D, the physical block BK on which the wear leveling process is executed is fixed to some extent (in this case, the physical blocks BK0, BK3, BK6, BK10, BK13, BK19).

この結果、不揮発性メモリでは、ウェアレベリング処理されないために同じデータが記憶されたままになってしまう物理ブロックBK(いわゆる不動ブロック)が数多く発生してしまうことになる。   As a result, in the nonvolatile memory, many physical blocks BK (so-called non-moving blocks) are generated in which the same data remains stored because the wear leveling process is not performed.

そして、このように不動ブロックが数多く発生してしまった場合、不揮発性メモリの各物理ブロックBKに対する負荷が偏った状態になっているので、不揮発性メモリの使用可能期間を向上させることが難しくなってしまう。   When a large number of immovable blocks are generated in this way, the load on each physical block BK of the nonvolatile memory is biased, so it is difficult to improve the usable period of the nonvolatile memory. End up.

このように、第2の手法を適用した半導体記憶装置は、消去管理テーブル等を保持する必要がないため、第1の手法を適用した場合と比べてその構成を簡易化し得るものの、不揮発性メモリの各物理ブロックBKに対する負荷を十分に均一化することができないという問題があった。   As described above, the semiconductor memory device to which the second technique is applied does not need to hold the erasure management table or the like, and thus the configuration can be simplified as compared with the case where the first technique is applied. There is a problem that the load on each physical block BK cannot be made sufficiently uniform.

本発明は、以上の点を考慮してなされたものであり、簡易な構成で不揮発性メモリの各ブロックに対する負荷をより均一化することが可能な半導体記憶装置及びメモリ制御方法を提案するものである。   The present invention has been made in consideration of the above points, and proposes a semiconductor memory device and a memory control method capable of making the load on each block of the nonvolatile memory more uniform with a simple configuration. is there.

上述した目的を達成するために、本発明に係る半導体記憶装置は、データの消去処理情報が対応付けられている所定数の物理ブロックからなるセグメントを複数有する不揮発性メモリと、外部機器からのアクセス要求に応じて上記不揮発性メモリに対するデータの書き込み及び/又は読み出し制御を行うメモリ制御手段とを備え、上記メモリ制御手段は、上記セグメント内の一部の物理空間と、2つの異なる論理空間である第1の論理空間及び第2の論理空間とを対応付けて管理する論理物理変換手段と、上記セグメント内の消去処理が実行されていない旨の上記消去処理情報が対応付けられている物理ブロックに記憶されているデータを上記セグメント内の他の物理ブロックに移動させるデータ移動手段とを有することを特徴とする。   In order to achieve the above object, a semiconductor memory device according to the present invention includes a nonvolatile memory having a plurality of segments each having a predetermined number of physical blocks associated with data erasure processing information, and access from an external device. Memory control means for performing data write and / or read control on the non-volatile memory in response to a request, the memory control means being a part of physical space in the segment and two different logical spaces The physical block that associates and manages the first logical space and the second logical space and the physical block associated with the erase processing information indicating that the erase processing in the segment is not executed And data movement means for moving the stored data to another physical block in the segment.

また、上述した目的を達成するために、本発明に係るメモリ制御方法は、データの消去処理情報が対応付けられている所定数の物理ブロックからなるセグメントを複数有する不揮発性メモリを備える半導体記憶装置に用いられ、外部機器からのアクセス要求に応じて上記不揮発性メモリに対するデータの書き込み及び/又は読み出し制御を行うメモリ制御方法であって、上記セグメント内の一部の物理空間と、2つの異なる論理空間である第1の論理空間及び第2の論理空間とを対応付けて管理し、上記セグメント内の消去処理が実行されていない旨の上記消去処理情報が対応付けられている物理ブロックに記憶されているデータを上記セグメント内の他の物理ブロックに移動させることを特徴とする。   In order to achieve the above-described object, a memory control method according to the present invention includes a non-volatile memory having a plurality of segments each having a predetermined number of physical blocks associated with data erasure processing information. A memory control method for performing data write and / or read control on the non-volatile memory in response to an access request from an external device, comprising a part of the physical space in the segment and two different logics The first logical space and the second logical space which are spaces are managed in association with each other, and the erasure processing information indicating that the erasure processing in the segment is not executed is stored in the associated physical block. The data is moved to another physical block in the segment.

本発明によれば、各セグメントに対するデータの書き込み頻度を分散し、物理ブロックに対する負荷の均一化にするためのウェアレベリング処理をより高精度に実現することが可能となる。   According to the present invention, it is possible to realize the wear leveling process for distributing the data writing frequency to each segment and making the load on the physical block uniform with higher accuracy.

以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。   Hereinafter, specific embodiments to which the present invention is applied will be described in detail with reference to the drawings.

図1は、本発明を適用した一実施の形態における半導体記憶装置1の構成を示す図である。半導体記憶装置1は、不揮発性メモリ2A,2B,・・・を備える不揮発性メモリ2と、不揮発性メモリ2の制御処理を行うコントローラ3とを備えたカード型の半導体記憶装置である。半導体記憶装置1は、メモリスティック(登録商標)に相当し、パーソナルコンピュータ等の外部機器から供給されるデータが書き込まれる。   FIG. 1 is a diagram showing a configuration of a semiconductor memory device 1 according to an embodiment to which the present invention is applied. The semiconductor memory device 1 is a card-type semiconductor memory device including a nonvolatile memory 2 including nonvolatile memories 2A, 2B,... And a controller 3 that performs control processing of the nonvolatile memory 2. The semiconductor memory device 1 corresponds to a Memory Stick (registered trademark), and data supplied from an external device such as a personal computer is written therein.

コントローラ3において、メモリ制御を司るMPU(Micro Processing Unit)4は、命令レジスタ等からなるレジスタ5と、誤り訂正処理等を実行するECC(Error Correcting Circuit)6と、MPU4がプログラムを実行展開するためのRAM(Random Access Memory)7と、不揮発性メモリ2Aに対して読み書きされるデータが一時的に蓄積されるデータバッファ8とが接続される。また、コントローラ3は、メモリスティック内部クロックを生成するためのクロック生成部9を備える。   In the controller 3, an MPU (Micro Processing Unit) 4 that controls memory control includes a register 5 including an instruction register, an ECC (Error Correcting Circuit) 6 that executes error correction processing, and the MPU 4 executes and develops a program. RAM (Random Access Memory) 7 and a data buffer 8 in which data to be read / written from / to the nonvolatile memory 2A are temporarily stored. The controller 3 also includes a clock generation unit 9 for generating a memory stick internal clock.

不揮発性メモリ2の所定の領域には、本実施の形態に係る処理動作を実行するためのプログラムが記憶されており、MPU4は、このプログラムを不揮発性メモリ2より読み出してRAM7に展開し、このプログラムに基づく処理を実行する。   A program for executing the processing operation according to the present embodiment is stored in a predetermined area of the nonvolatile memory 2, and the MPU 4 reads this program from the nonvolatile memory 2 and expands it in the RAM 7. Perform processing based on the program.

データバッファ8は、バス10を介してシリアルインターフェース11及びパラレルインターフェース12と接続される。外部機器からのデータは、ラインDATA0〜DATA3及びパラレルインターフェース12、ラインDATA0及びシリアルインターフェース11を順次介してデータバッファ8へ入力され、MPU4は、このデータバッファ8に入力されたデータを不揮発性メモリ2A,2B,・・・に書き込む動作を行う。   The data buffer 8 is connected to the serial interface 11 and the parallel interface 12 via the bus 10. Data from an external device is sequentially input to the data buffer 8 via the lines DATA0 to DATA3 and the parallel interface 12, the line DATA0 and the serial interface 11, and the MPU 4 converts the data input to the data buffer 8 to the nonvolatile memory 2A. , 2B,...

また、半導体記憶装置1には、ラインVSS,VCCを介して電源が供給される。また、半導体記憶装置1は、外部機器からのデータを取り込むために必要なクロックが入力されるラインSCLKや、外部機器に対してこの半導体記憶装置1が正常に装着されているか否かを判断するための信号が入力されるラインINSや、外部機器から供給されるデータの向きを判断するための信号が入力されるラインBS等も備える。   Further, power is supplied to the semiconductor memory device 1 via lines VSS and VCC. Further, the semiconductor memory device 1 determines whether or not the semiconductor memory device 1 is normally attached to the line SCLK to which a clock necessary for taking in data from the external device is input and the external device. For example, a line INS to which a signal for input is input and a line BS to which a signal for determining the direction of data supplied from an external device is input.

不揮発性メモリ2は、複数の不揮発性メモリ(不揮発性メモリ2A,2B,・・・)を備えるが、以下では省略のため、不揮発性メモリ2Aについて説明する。   The non-volatile memory 2 includes a plurality of non-volatile memories (non-volatile memories 2A, 2B,...).

図2に示すように、不揮発性メモリ2Aが有する物理空間は、複数の物理ブロックから構成される。各物理ブロックは、複数のページから構成される。各ページは、複数のセクタ(図示せず)と呼ばれるデータの書き込み又は読み出し単位から構成される。   As shown in FIG. 2, the physical space of the nonvolatile memory 2A is composed of a plurality of physical blocks. Each physical block is composed of a plurality of pages. Each page is composed of data write or read units called a plurality of sectors (not shown).

この不揮発性メモリ2Aが有する物理空間は、図3に示すように、実際にデータが書き込み、読み出し、消去等される領域であり、所定数の物理ブロックからなるセグメントを複数有するユーザデータエリア、及び、このユーザデータエリアにおける物理ブロックアドレスと論理ブロックアドレスとを対応付けて管理する論理物理変換テーブルを有する管理エリアから構成される。この論理物理変換テーブルには、例えばFAT(File Allocation Tables)等のファイルシステムを適用する。   As shown in FIG. 3, the physical space of the nonvolatile memory 2A is an area where data is actually written, read, erased, etc., and a user data area having a plurality of segments each having a predetermined number of physical blocks, and The management area includes a logical physical conversion table for managing the physical block address and the logical block address in association with each other in the user data area. For example, a file system such as FAT (File Allocation Tables) is applied to the logical-physical conversion table.

なお、不揮発性メモリ2Aが有する物理ブロック、及び、物理ブロックを構成するページは、データの追記は可能であるが、上書きは不可能である。また、不揮発性メモリ2Aにおいて、データの書き込み、又は読み出しはセクタ単位で行い、データの消去はブロック単位で行う。   Note that data can be added to the physical block and the pages constituting the physical block of the nonvolatile memory 2A, but cannot be overwritten. In the nonvolatile memory 2A, data writing or reading is performed in units of sectors, and data is erased in units of blocks.

論理物理変換テーブルは、セグメント毎に物理ブロックに割り当てられた物理アドレスと、データの書き込み、読み出し、消去等の処理を行うための仮想的な空間である論理空間を構成する論理ブロックに割り当てられた論理アドレスとを対応付けて管理する。   The logical-physical conversion table is assigned to the logical block that constitutes the logical space that is a virtual space for performing processing such as data writing, reading, and erasing, and the physical address assigned to the physical block for each segment. The logical address is managed in association with it.

半導体記憶装置1において、1つのセグメントは、例えば512個の物理ブロックを有し、各物理ブロックには、例えば64ページ分のデータを記憶することが可能である(例えば1ページが2[Kbyte]に相当)。   In the semiconductor memory device 1, one segment has, for example, 512 physical blocks, and each physical block can store, for example, 64 pages of data (for example, one page is 2 [Kbyte]). Equivalent).

論理物理変換テーブルは、セグメント毎の外部機器からのデータの書き込み頻度が均一になるように、各セグメント内の所定数の物理ブロックからなる物理空間を2つの論理空間である第1の論理空間及び第2の論理空間と対応付けて管理する。   The logical-physical conversion table includes a first logical space, which is two logical spaces, and a physical space composed of a predetermined number of physical blocks in each segment so that the frequency of writing data from the external device for each segment is uniform. Management is performed in association with the second logical space.

例えば、不揮発性メモリ2Aが有する物理空間がセグメントS,S,・・・,Sn−1からなる場合、このセグメントS,S,・・・,Sn−1がそれぞれ有する物理空間を、それぞれ第1の論理空間A0a及び第2の論理空間A0b、第1の論理空間A1a及び第2の論理空間A1b、・・・、第1の論理空間A(n−1)a及び第2の論理空間A(n−1)bと対応付けて管理する。外部機器から取得されたデータは、論理空間A0a,A1a,・・・,A(n−1)a、論理空間A(n−1)b,・・・,A1b,A0bの順に書き込まれる。 For example, physical space segment S 0, S 1 having nonvolatile memory 2A, · · ·, if consisting of S n-1, the physical this segment S 0, S 1, ···, S n-1 has respectively The first logical space A 0a and the second logical space A 0b , the first logical space A 1a and the second logical space A 1b ,..., The first logical space A (n−1), respectively. ) A and the second logical space A (n-1) b are managed in association with each other. Data acquired from an external device, the logical space A 0a, A 1a, ···, A (n-1) a, logical space A (n-1) b, ···, A 1b, in the order of A 0b Written.

また、各セグメントは、2つの論理空間(第1の論理空間及び第2の論理空間)と対応付けられていない物理ブロックとして、データのウェアレベリング処理に適用される物理ブロック(以下、ウェアレベリング処理用ブロックという。)、及びデータ更新処理に適用される物理ブロック(以下、データ更新用ブロックという。)をさらに備え、後述のウェアレベリング処理によって物理ブロックに対する負荷の均一化を実現する。   Each segment is a physical block that is applied to the data wear leveling process (hereinafter, wear leveling process) as a physical block that is not associated with two logical spaces (first logical space and second logical space). And a physical block applied to the data update process (hereinafter referred to as a data update block), and the load on the physical block is made uniform by the wear leveling process described later.

図4は、この論理ブロックに対する論理アドレスの割り当て方法の一例を説明するための図である。   FIG. 4 is a diagram for explaining an example of a logical address assignment method for this logical block.

本例では、不揮発性メモリ2Aが有する物理空間は、物理ブロック0〜9からなるセグメント0、物理ブロック10〜19からなるセグメント1、及び、物理ブロック20〜29からなるセグメント2から構成されるとする。   In this example, the physical space of the non-volatile memory 2A is composed of segment 0 consisting of physical blocks 0 to 9, segment 1 consisting of physical blocks 10 to 19, and segment 2 consisting of physical blocks 20 to 29. To do.

ここで、データ更新用ブロックは、物理ブロック8、物理ブロック18、及び物理ブロック28であり、ウェアレベリング処理用ブロックは、物理ブロック9、物理ブロック19、及び物理ブロック29である。   Here, the data update blocks are the physical block 8, the physical block 18, and the physical block 28, and the wear leveling processing blocks are the physical block 9, the physical block 19, and the physical block 29.

なお、ここでは、例えばアドレスMが付された物理ブロック、論理ブロックについては、それぞれ物理ブロックM、論理ブロックMと記載する。   Here, for example, a physical block and a logical block to which an address M is assigned are described as a physical block M and a logical block M, respectively.

論理物理変換テーブルは、各セグメントが有する物理ブロックの内、データ更新用ブロック及びウェアレベリング処理用ブロックを除く残りの物理ブロックに付された物理アドレスと論理アドレスとを1つずつ対応付けて管理する。   The logical-physical conversion table manages the physical addresses and logical addresses assigned to the remaining physical blocks excluding the data update block and the wear leveling processing block among the physical blocks of each segment, one by one. .

論理物理変換テーブルは、物理ブロック0〜3、物理ブロック10〜13、物理ブロック20〜23、物理ブロック24〜27、物理ブロック14〜17、物理ブロック4〜7にそれぞれ対応する論理空間に対し、順に論理アドレス0〜3、論理アドレス10〜13、論理アドレス20〜23、論理アドレス30〜33、論理アドレス40〜43、論理アドレス50〜53を割り当てる。論理物理変換テーブルは、論理アドレス0〜3、論理アドレス10〜13、論理アドレス20〜23、論理アドレス30〜33、論理アドレス40〜43、論理アドレス50〜53が対応付けられた論理空間を、順に論理空間0、論理空間1、論理空間2、論理空間3、論理空間4、論理空間5として管理する。   The logical-physical conversion table is for logical spaces corresponding to physical blocks 0 to 3, physical blocks 10 to 13, physical blocks 20 to 23, physical blocks 24 to 27, physical blocks 14 to 17, and physical blocks 4 to 7, respectively. In order, logical addresses 0 to 3, logical addresses 10 to 13, logical addresses 20 to 23, logical addresses 30 to 33, logical addresses 40 to 43, and logical addresses 50 to 53 are assigned. The logical-physical conversion table is a logical space in which logical addresses 0 to 3, logical addresses 10 to 13, logical addresses 20 to 23, logical addresses 30 to 33, logical addresses 40 to 43, and logical addresses 50 to 53 are associated with each other. The logical space 0, logical space 1, logical space 2, logical space 3, logical space 4, and logical space 5 are managed in order.

外部機器から取得されたデータは、論理アドレス0〜3、論理アドレス10〜13、論理アドレス20〜23、論理アドレス30〜33、論理アドレス40〜43、論理アドレス50〜53の順に書き込まれる。   Data acquired from the external device is written in the order of logical addresses 0 to 3, logical addresses 10 to 13, logical addresses 20 to 23, logical addresses 30 to 33, logical addresses 40 to 43, and logical addresses 50 to 53.

図5は、論理物理変換テーブルが管理する1セグメント当たりの物理空間と、この物理空間に対応する論理空間との関係を示す図である。   FIG. 5 is a diagram showing the relationship between the physical space per segment managed by the logical-physical conversion table and the logical space corresponding to this physical space.

論理物理変換テーブルは、各セグメントを構成する物理ブロックにデータの消去処理がなされたか否かを示す消去処理フラグを対応付けて管理する。MPU4は、消去処理がなされた物理ブロックに対応付けられた消去処理フラグを1に設定し、消去処理がなされていない物理ブロックに対応付けられた消去処理フラグを0に設定する。   The logical-physical conversion table manages the physical blocks constituting each segment in association with an erasure processing flag indicating whether or not data erasure processing has been performed. The MPU 4 sets the erase process flag associated with the physical block that has been erased to 1 and sets the erase process flag associated with the physical block that has not been erased to 0.

また、論理物理変換テーブルは、各セグメントを構成する物理ブロックに対し、後述のウェアレベリング処理が行われたか否かを示すウェアレベリング処理フラグを対応付けて管理する。MPU4は、ウェアレベリング処理が行われた物理ブロックに対してはウェアレベリング処理フラグを1に設定し、ウェアレベリング処理がなされていない物理ブロックに対してはウェアレベリング処理フラグを0に設定する。   Further, the logical-physical conversion table manages a wear leveling process flag indicating whether or not a wear leveling process, which will be described later, has been performed on the physical blocks constituting each segment. The MPU 4 sets the wear leveling processing flag to 1 for a physical block that has been subjected to wear leveling processing, and sets the wear leveling processing flag to 0 for a physical block that has not been subjected to wear leveling processing.

また、論理物理変換テーブルは、各セグメントを構成する物理ブロックに対し、後述のウェアレベリング処理が処理中であるか否かを示すウェアレベリング処理中フラグを対応付けて管理する。MPU4は、ウェアレベリング処理開始時にウェアレベリング処理中フラグを1に設定し、ウェアレベリング処理終了時にウェアレベリング処理中フラグを0に設定する。   Also, the logical-physical conversion table manages a physical block constituting each segment in association with a wear leveling processing flag indicating whether or not a later-described wear leveling processing is being processed. The MPU 4 sets the wear leveling process flag to 1 when the wear leveling process starts, and sets the wear leveling process flag to 0 when the wear leveling process ends.

また、論理物理変換テーブルは、データ更新用ブロックである物理ブロックa+8に対してはデータ更新用ブロックアドレスを、また、ウェアレベリング処理用ブロックである物理ブロックa+9に対してはウェアレベリング処理用ブロックアドレス、ウェアレベリング処理の進捗状況を示すウェアレベリング処理進捗情報、及びウェアレベリング処理中フラグを対応付けて管理する。   Also, the logical-physical conversion table has a data update block address for the physical block a + 8 that is a data update block, and a wear leveling block address for the physical block a + 9 that is a wear leveling block. The wear leveling process progress information indicating the progress of the wear leveling process and the wear leveling process flag are managed in association with each other.

なお、消去処理フラグ、ウェアレベリング処理フラグ、及びウェアレベリング処理中フラグは、管理情報として管理エリアに記憶される。また、データ更新用ブロックアドレス、ウェアレベリング処理用ブロックアドレス、及びウェアレベリング処理進捗情報も管理エリアに記憶される。   The erasing process flag, the wear leveling process flag, and the wear leveling process in progress flag are stored in the management area as management information. Further, the data update block address, the wear leveling block address, and the wear leveling process progress information are also stored in the management area.

このように、半導体記憶装置1では、消去処理フラグ、ウェアレベリング処理フラグ、ウェアレベリング処理中フラグを各物理ブロックに対応付けて管理エリアに管理情報として記憶するが、この消去処理フラグ、ウェアレベリング処理フラグ、及びウェアレベリング処理中フラグはともにデータに対する処理がなされたか否かを示すのみの情報であって情報量は1ブロックに対して1ビット(0または1)で済むため、消去回数等を管理する従来の構成と比べて一段と簡易な構成にすることが可能となる。   As described above, in the semiconductor memory device 1, the erasing process flag, the wear leveling process flag, and the wear leveling process in progress flag are associated with each physical block and stored as management information in the management area. Both the flag and the wear leveling in-process flag are information only indicating whether or not the data has been processed, and the amount of information can be one bit (0 or 1) per block, so the number of erasures and the like is managed. Compared to the conventional configuration, a simpler configuration can be achieved.

各セグメントを構成する物理ブロックの内、データ更新用ブロック及びウェアレベリング処理用ブロック以外の物理ブロックに付された物理アドレスは、上述の方法によって設定された論理アドレスと対応付けて管理される。例えば、物理アドレスa、物理アドレスa+1、物理アドレスa+2、物理アドレスa+3は、それぞれ論理アドレスm,論理アドレスm+1、論理アドレスm+2、論理アドレスm+3と対応付けられて管理され、物理アドレスa+4、物理アドレスa+5、物理アドレスa+6、物理アドレスa+7は、それぞれ論理アドレスn、論理アドレスn+1、論理アドレスn+2、論理アドレスn+3と対応付けて管理される。ここで、論理アドレスm、論理アドレスm+1、論理アドレスm+2、論理アドレスm+3がそれぞれ割り当てられた論理空間は、まとめて論理空間Xとして管理され、論理アドレスn、論理アドレスn+1、論理アドレスn+2、論理アドレスn+3がそれぞれ割り当てられた論理空間は、まとめて論理空間Yとして管理される。   Of the physical blocks constituting each segment, physical addresses assigned to physical blocks other than the data update block and the wear leveling processing block are managed in association with the logical addresses set by the above-described method. For example, the physical address a, the physical address a + 1, the physical address a + 2, and the physical address a + 3 are managed in association with the logical address m, the logical address m + 1, the logical address m + 2, and the logical address m + 3, respectively, and the physical address a + 4 and the physical address a + 5. The physical address a + 6 and the physical address a + 7 are managed in association with the logical address n, the logical address n + 1, the logical address n + 2, and the logical address n + 3, respectively. Here, the logical space to which the logical address m, the logical address m + 1, the logical address m + 2, and the logical address m + 3 are respectively assigned is managed as a logical space X. The logical address n, the logical address n + 1, the logical address n + 2, and the logical address The logical spaces to which n + 3 are respectively assigned are collectively managed as a logical space Y.

一般に、FAT等のファイルシステムにて管理されるデータは、論理アドレスの小さい順に更新される。ここで、物理ブロックの配列順に従って論理アドレスを順に割り当てた場合、たとえセグメント毎にデータのウェアレベリング処理を行ったとしても、セグメント0等、番号の小さいセグメントが備える物理ブロックに対して消去処理に伴う負荷が集中し、他のセグメントが有する物理ブロックよりも早くに消耗時期に達する。   In general, data managed by a file system such as FAT is updated in ascending order of logical addresses. Here, when logical addresses are assigned in order according to the physical block arrangement order, even if data wear leveling processing is performed for each segment, it is erased for physical blocks included in a segment with a small number such as segment 0. The accompanying load is concentrated, and the consumption time is reached earlier than the physical blocks of other segments.

通常、不揮発性メモリのサイズに対してデータがフルサイズに書き込まれることは少ない。不揮発性メモリ2Aにおいて、セグメントの半分のサイズ、例えば図4に示すように、論理空間0〜2に対応する物理空間に対して頻繁に消去処理がされる場合、論理空間3〜5に対応する物理空間に対して消去処理がされないため、これら2つの物理空間には消去回数に差が生じ、ウェアレベリング処理が有効になる。また、論理アドレスの小さい順からデータを保存し、そのデータを半永久的に更新しない場合、すなわち、データを読み出し専用ファイルとして保存する場合、論理空間0〜2に対応する物理ブロックに書き込まれたデータは更新されないために消去処理がなされず、論理空間3〜5のアドレス空間が頻繁に更新されることとなる。この場合においても、セグメント内の各物理ブロックに対する消去回数に差が生じ、ウェアレベリング処理が有効となる。   Normally, data is not written to the full size with respect to the size of the nonvolatile memory. In the nonvolatile memory 2A, when the erase process is frequently performed on the physical space corresponding to the logical space 0 to 2 as shown in FIG. Since the erasure process is not performed on the physical space, a difference occurs in the number of erasures between these two physical spaces, and the wear leveling process becomes effective. In addition, when data is stored in ascending order of logical addresses and the data is not semi-permanently updated, that is, when data is stored as a read-only file, the data written in the physical blocks corresponding to the logical spaces 0 to 2 Therefore, the erasure process is not performed and the address spaces of the logical spaces 3 to 5 are frequently updated. Even in this case, there is a difference in the number of erasures for each physical block in the segment, and wear leveling processing becomes effective.

このように、半導体記憶装置1では、不揮発性メモリ2Aの物理空間においてデータの書き込み頻度を分散させるように、具体的には、セグメント毎の外部機器からのデータの書き込み頻度が均一になるように論理アドレスを物理アドレスに対応付けることにより、後述するウェアレベリング処理による物理ブロックに対する負荷の均一化をより高精度に実現する。   As described above, in the semiconductor memory device 1, specifically, the data write frequency from the external device for each segment is made uniform so that the data write frequency is distributed in the physical space of the nonvolatile memory 2 </ b> A. By associating the logical address with the physical address, the load on the physical block can be made uniform with higher accuracy by the wear leveling process described later.

不揮発性メモリ2Aを構成する所定のセグメントにおいて、MPU4は、データの書き込みがなされた物理ブロックに対してデータの更新処理を行う。この際、MPU4は、消去処理がなされた物理ブロックに対し、図5に示すように、消去処理フラグを1に設定する。そして、MPU4は、消去処理フラグ1が対応付けられた物理ブロックに対して再度消去処理がなされた場合、データの消去動作に伴う不揮発性メモリ2への負荷を均一化するためのウェアレベリング処理を開始する。   In a predetermined segment constituting the nonvolatile memory 2A, the MPU 4 performs a data update process on the physical block to which data has been written. At this time, the MPU 4 sets the erasure processing flag to 1 as shown in FIG. 5 for the physical block that has undergone the erasure processing. When the erasure process is performed again on the physical block associated with the erasure process flag 1, the MPU 4 performs a wear leveling process for equalizing the load on the nonvolatile memory 2 associated with the data erasure operation. Start.

また、MPU4は、セグメント内における消去処理がなされていない物理ブロックに対しては消去処理フラグを0に設定する。MPU4は、データの更新頻度が低い論理空間に対応する物理空間において、消去処理フラグ0が対応付けられた物理ブロックを論理アドレスが大きい順に検索する。そして、MPU4は、この消去処理フラグ0が対応付けられた物理ブロックを用いてウェアレベリング処理を行う。   In addition, the MPU 4 sets the erasure processing flag to 0 for a physical block that has not been erased in the segment. The MPU 4 searches for physical blocks associated with the erasure processing flag 0 in descending order of logical addresses in a physical space corresponding to a logical space with a low data update frequency. Then, the MPU 4 performs the wear leveling process using the physical block associated with the erasure process flag 0.

図6は、セグメント毎のデータの書き込み処理に伴うデータの更新処理の一例を説明するための図である。図6(A)に示すように、外部機器より、例えば論理アドレスm(図示せず)に対応する物理ブロックaに対してデータの書き込み要求がなされると、MPU4は、論理物理変換テーブルを参照することにより、論理アドレスmに対応する物理アドレスaを認識する。また、MPU4は、データ更新用ブロックである物理ブロックa+8を認識する。そして、MPU4は、物理ブロックa+8に外部機器からのデータを書き込み、図6(B)に示すように、この物理アドレスa+8を論理アドレスmと対応付けるように論理物理変換テーブルを更新するとともに、物理ブロックaに記憶されているデータを消去し、この物理ブロックaをデータ更新用ブロックとして論理物理変換テーブルを更新する。また、MPU4は、物理ブロックaに対応付けられた消去処理フラグを1に設定するように管理エリアに記憶されている管理情報を更新する。   FIG. 6 is a diagram for explaining an example of the data update process accompanying the data write process for each segment. As shown in FIG. 6A, when an external device makes a data write request to a physical block a corresponding to a logical address m (not shown), for example, the MPU 4 refers to the logical physical conversion table. As a result, the physical address a corresponding to the logical address m is recognized. Further, the MPU 4 recognizes the physical block a + 8 that is a data update block. Then, the MPU 4 writes data from the external device to the physical block a + 8, and updates the logical-physical conversion table so as to associate the physical address a + 8 with the logical address m as shown in FIG. The data stored in a is erased, and the logical-physical conversion table is updated with the physical block a as a data update block. Further, the MPU 4 updates the management information stored in the management area so as to set the erasure processing flag associated with the physical block a to 1.

また、図7は、セグメント毎のウェアレベリング処理の一例を説明するための図である。データの更新処理の後、再度、論理アドレスmに対応する物理ブロックa+8へのデータの書き込み要求がなされた場合、仮に、図6に示す更新処理と同様の更新処理を行うようにすると、物理ブロックa及び物理ブロックa+8ばかりにデータの消去処理がされるため、物理ブロックa及び物理ブロックa+8への負荷が他の物理ブロックに比べて大きくなってしまう。そこで、再度、論理アドレスmに対応する物理ブロックへのデータの書き込み要求がなされた場合には、例えば図7(A)及び図7(B)に示すようなウェアレベリング処理を行うことにより、消去処理を行う物理ブロックの固定化を抑制し、セグメント内の物理ブロックに対する負荷を均一化する。   FIG. 7 is a diagram for explaining an example of the wear leveling process for each segment. After a data update process, when a data write request to the physical block a + 8 corresponding to the logical address m is made again, if an update process similar to the update process shown in FIG. 6 is performed, the physical block Since only data a and physical block a + 8 are erased, the load on physical block a and physical block a + 8 is greater than other physical blocks. Therefore, when a data write request is again made to the physical block corresponding to the logical address m, for example, by performing wear leveling processing as shown in FIGS. The fixing of physical blocks to be processed is suppressed, and the load on the physical blocks in the segment is made uniform.

例えば、物理ブロックa+7に消去処理フラグ0が対応付けられている場合、物理ブロックa+7に記憶されているデータをウェアレベリング処理用ブロックである物理ブロックa+9にコピーする。   For example, when the erasure processing flag 0 is associated with the physical block a + 7, the data stored in the physical block a + 7 is copied to the physical block a + 9 that is a wear leveling processing block.

そして、論理物理変換テーブルは、物理ブロックa+9が論理アドレスn+3に対応付けられるように管理情報を更新するとともに、物理ブロックa+7をデータ更新用ブロックとして、また、物理ブロックaをウェアレベリング処理用ブロックとして管理情報を更新する。   The logical-physical conversion table updates the management information so that the physical block a + 9 is associated with the logical address n + 3, the physical block a + 7 as the data update block, and the physical block a as the wear leveling processing block. Update management information.

このようなデータウェアレベリング処理を施したデータ更新処理の後、物理ブロックa+8及び物理ブロックa+7において上述と同様のデータの更新処理が行われる。   After the data update process subjected to such data wear leveling process, the same data update process as described above is performed in the physical block a + 8 and the physical block a + 7.

なお、このウェアレベリング処理では、MPU4は、消去処理フラグ0が対応付けられた物理ブロックを論理アドレスの大きい順に検索する。MPU4は、例えば図8に示すように、セグメント内で消去処理フラグ0が対応付けられた物理ブロックを検索対象ブロックとして論理アドレスの大きい順に検索する。この図8に示す例では、セグメント0において、論理空間5が有する論理アドレスn+2に対応する物理ブロックa+6がウェアレベリング処理に用いる物理ブロックとされる。   In this wear leveling process, the MPU 4 searches for physical blocks associated with the erasure process flag 0 in descending order of logical addresses. For example, as shown in FIG. 8, the MPU 4 searches the physical block associated with the erasure processing flag 0 in the segment in the descending order of the logical address as the search target block. In the example shown in FIG. 8, in segment 0, the physical block a + 6 corresponding to the logical address n + 2 of the logical space 5 is the physical block used for the wear leveling process.

MPU4は、セグメント0が有する物理ブロックに対応付けられたウェアレベリング処理フラグが全て1になった時点でウェアレベリング処理を終了する。   The MPU 4 ends the wear leveling process when the wear leveling process flags associated with the physical blocks included in the segment 0 are all set to 1.

MPU4は、ストレージメディアにおける通常の書き込み処理に相当するデータ更新処理において、データの更新頻度が低く消去処理フラグ0が対応付けられた物理ブロックに記憶されているデータの1ページ分を、ウェアレベリング処理用ブロックにコピーするウェアレベリング処理を行い、データ更新処理を終了させる。そして、MPU4は、次のデータ更新処理が発生した場合に、続きのデータの1ページ分を、ウェアレベリング処理用ブロックにコピーするウェアレベリング処理を行い、データ更新処理を終了させる。これにより、半導体記憶装置1におけるパフォーマンスの低下を抑制する。   The MPU 4 performs a wear leveling process on one page of data stored in a physical block associated with an erasure processing flag 0 with a low data update frequency in a data update process corresponding to a normal write process on a storage medium. The wear leveling process for copying to the block is performed, and the data update process is terminated. Then, when the next data update process occurs, the MPU 4 performs a wear leveling process of copying one page of subsequent data to the wear leveling process block, and ends the data update process. As a result, a decrease in performance in the semiconductor memory device 1 is suppressed.

また、半導体記憶装置1は、セグメント内の全ての物理ブロックにウェアレベリング処理がなされた場合、全ての物理ブロックに対応付けられた消去処理フラグ、ウェアレベリング処理フラグ、及びウェアレベリング処理中フラグの設定を1から0にし、ウェアレベリング処理を終了させる。   Further, when the wear leveling process is performed on all the physical blocks in the segment, the semiconductor memory device 1 sets the erasure process flag, the wear leveling process flag, and the wear leveling process flag that are associated with all the physical blocks. Is changed from 1 to 0, and the wear leveling process is terminated.

図9は、不揮発性メモリ2Aにおける各セグメント内の物理ブロックのデータ更新処理の処理動作を説明するためのフローチャートである。   FIG. 9 is a flowchart for explaining the processing operation of the data update processing of the physical block in each segment in the nonvolatile memory 2A.

ステップS1において、半導体記憶装置1が備える不揮発性メモリ2に対し、外部機器よりデータが書き込まれる。   In step S1, data is written from an external device to the nonvolatile memory 2 included in the semiconductor memory device 1.

ステップS2において、半導体記憶装置1が備えるMPU4は、不揮発性メモリ2Aの管理エリアに記憶されている論理物理変換テーブルを参照し、セグメント内のデータの更新対象となる論理アドレスに対応する物理ブロックを取得する。   In step S2, the MPU 4 included in the semiconductor storage device 1 refers to the logical-physical conversion table stored in the management area of the nonvolatile memory 2A, and determines the physical block corresponding to the logical address to be updated in the segment. get.

ステップS3において、MPU4は、データ更新用ブロックを取得する。   In step S3, the MPU 4 acquires a data update block.

ステップS4において、MPU4は、外部機器から取得したデータをデータ更新用ブロックに書き込む。   In step S4, the MPU 4 writes the data acquired from the external device into the data update block.

ステップS5において、MPU4は、データ更新用ブロックをデータの更新対象の論理アドレスに対応する物理ブロックとして論理物理変換テーブルの管理情報を更新する。   In step S5, the MPU 4 updates the management information of the logical-physical conversion table with the data update block as a physical block corresponding to the logical address to be updated.

ステップS6において、MPU4は、データの更新対象の論理アドレスに対応する物理ブロックに記憶されているデータを消去する。   In step S6, the MPU 4 erases the data stored in the physical block corresponding to the logical address to be updated.

ステップS7において、MPU4は、データの更新対象の論理アドレスに対応する物理ブロックをデータ更新用ブロックとして論理物理変換テーブルの管理情報を更新する。   In step S7, the MPU 4 updates the management information in the logical-physical conversion table using the physical block corresponding to the logical address to be updated as a data update block.

また、このステップS7において、論理物理変換テーブルは、ステップS6にてデータの消去処理がなされた物理ブロックに対応付けられた消去処理フラグを1に設定する。MPU4は、消去処理フラグ1が対応付けられた物理ブロックに対して再度消去処理がなされた場合、セグメント内の他の物理ブロックと比較して消去回数が多いと判断し、データの消去動作に伴う不揮発性メモリ2Aへの負荷を均一化するためのウェアレベリング処理を開始する。   In step S7, the logical-physical conversion table sets the erasure processing flag associated with the physical block in which the data erasure processing has been performed in step S6 to 1. When the erasure process is performed again on the physical block associated with the erasure process flag 1, the MPU 4 determines that the number of erasures is larger than that of other physical blocks in the segment, and accompanies the data erasure operation. A wear leveling process for equalizing the load on the nonvolatile memory 2A is started.

ステップS8において、MPU4は、物理空間のウェアレベリング処理を行う。ここで、ステップS8におけるウェアレベリング処理の処理動作の詳細について図10A,図10Bのフローチャートを参照しながら説明する。   In step S8, the MPU 4 performs a physical space wear leveling process. Here, the details of the processing operation of the wear leveling process in step S8 will be described with reference to the flowcharts of FIGS. 10A and 10B.

ステップS20において、MPU4は、上記セグメント内のウェアレベリング処理を開始する。   In step S20, the MPU 4 starts the wear leveling process in the segment.

ステップS21において、MPU4は、ウェアレベリング処理中フラグが1であるか0であるかを確認することにより、現在ウェアレベリング処理が行われているか否かを確認する。このステップS21において、ウェアレベリング処理中フラグが1であれば、Aに続くステップS25に進み、0であればステップS22に進む。   In step S21, the MPU 4 confirms whether the wear leveling process is currently being performed by confirming whether the wear leveling process flag is 1 or 0. In this step S21, if the wear leveling processing flag is 1, the process proceeds to step S25 following A, and if it is 0, the process proceeds to step S22.

ステップS22において、セグメント内の特定の物理ブロックに対して書き込みによるデータの更新処理に伴う消去処理がなされると、MPU4は、この物理ブロックに対応付けられた消去処理フラグが0又は1の何れであるかを確認する。このステップS22において消去処理フラグが0である場合は、ステップS27に進む。ステップS27において、MPU4は、消去処理フラグを1にしてDに続くステップS44に進み、一連のウェアレベリング処理を終了させる。   In step S22, when an erasure process associated with a data update process by writing is performed on a specific physical block in the segment, the MPU 4 determines whether the erasure process flag associated with this physical block is 0 or 1. Check if it exists. If the erasure processing flag is 0 in step S22, the process proceeds to step S27. In step S27, the MPU 4 sets the erasure processing flag to 1 and proceeds to step S44 following D, and ends a series of wear leveling processing.

一方、このステップS22において消去処理フラグが1である場合は、ステップS23に進む。ステップS23において、MPU4は、ウェアレベリング処理中フラグを1にし、その後ステップS24においてデータの書き込みにより消去が行われた物理ブロックのウェアレベリング処理中フラグを1にし、ステップS28に進む。   On the other hand, if the erasure processing flag is 1 in step S22, the process proceeds to step S23. In step S23, the MPU 4 sets the wear leveling processing flag to 1, and then sets the wear leveling processing flag of the physical block that has been erased by writing data in step S24 to 1 and proceeds to step S28.

半導体記憶装置1では、例えばデータの書き込み処理等、他のデータ処理がなされた場合にデータの書き込み処理を物理ブロック単位に分割し、物理ブロック単位での書き込み処理が終わる度にウェアレベリング処理を行う。   In the semiconductor memory device 1, for example, when other data processing such as data writing processing is performed, the data writing processing is divided into physical block units, and wear leveling processing is performed every time the writing processing in physical block units is completed. .

ステップS25において、MPU4は、ウェアレベリング処理を行う物理ブロックに書き込みによる消去処理が発生したか否かを確認する。このステップS25において、MPU4は、ウェアレベリング処理を行う物理ブロックに書き込みによる消去処理が発生したことを確認した場合にはステップS43に進み、ウェアレベリング処理を行う物理ブロックに書き込みによる消去処理が発生していないことを確認した場合にはステップS26に進む。   In step S25, the MPU 4 confirms whether or not an erasure process by writing has occurred in the physical block for which the wear leveling process is performed. In this step S25, when the MPU 4 confirms that the erasure process by the write has occurred in the physical block that performs the wear leveling process, the process proceeds to step S43, and the erase process by the write occurs in the physical block that performs the wear leveling process. If it is confirmed that the process has not been performed, the process proceeds to step S26.

ステップS26において、MPU4は、ステップS28〜ステップS34の処理を行うケース1、ステップS35〜ステップS37の処理を行うケース2、ステップS38〜ステップS42の処理を行うケース3の何れの時点でウェアレベリング処理途中であるかを示すウェアレベリング処理進捗情報に基づいて、ケース1、ケース2、又はケース3の何れの処理工程に進む。このウェアレベリング処理進捗情報は、続く処理工程が何れであるかを示すようにケース1、ケース2、又はケース3に設定されている。   In step S26, the MPU 4 wears the wear leveling process at any time point in case 1 in which the processes in steps S28 to S34 are performed, case 2 in which the processes in steps S35 to S37 are performed, and case 3 in which the processes in steps S38 to S42 are performed. Based on the wear leveling process progress information indicating whether the process is in progress, the process proceeds to any of the process steps of case 1, case 2, and case 3. The wear leveling process progress information is set in case 1, case 2, or case 3 so as to indicate which processing step is to be continued.

ステップS26の後、ケース1に進む場合、Bに続くステップS28において、MPU4は、セグメント内においてウェアレベリング処理フラグ0の物理ブロックを検索する。   When the process proceeds to case 1 after step S26, in step S28 following B, the MPU 4 searches for the physical block of the wear leveling processing flag 0 in the segment.

ステップS29において、MPU4は、セグメント内の全ての物理ブロックに対応付けられたウェアレベリング処理フラグが1であるか否かを確認する。このステップS29において、MPU4は、セグメント内の全ての物理ブロックに対応付けられたウェアレベリング処理フラグが1である、すなわち、ウェアレベリング処理フラグ0が付された物理ブロックがないことを確認した場合はステップS30に進み、消去処理フラグ0が付された物理ブロックがあることを確認した場合はステップS33に進む。   In step S29, the MPU 4 checks whether or not the wear leveling processing flag associated with all the physical blocks in the segment is 1. In this step S29, when the MPU 4 confirms that the wear leveling processing flag associated with all the physical blocks in the segment is 1, that is, there is no physical block to which the wear leveling processing flag 0 is attached. Proceeding to step S30, if it is confirmed that there is a physical block with the erasure processing flag 0, the process proceeds to step S33.

ステップS30において、MPU4は、セグメント内の全物理ブロックに対してウェアレベリング処理フラグを0に設定し、ステップS31に進む。   In step S30, the MPU 4 sets the wear leveling processing flag to 0 for all physical blocks in the segment, and proceeds to step S31.

ステップS31において、MPU4は、セグメント内の全物理ブロックに対して消去処理フラグを0に設定しステップS32に進む。   In step S31, the MPU 4 sets the erasure processing flag to 0 for all physical blocks in the segment, and proceeds to step S32.

ステップS32において、MPU4は、ウェアレベリング処理中フラグを0に設定し、Cに続くステップS44に進む。   In step S32, the MPU 4 sets the wear leveling processing flag to 0, and proceeds to step S44 following C.

ステップS33において、MPU4は、ウェアレベリング処理進捗情報をケース2に設定してステップS34に進む。   In step S33, the MPU 4 sets the wear leveling process progress information in case 2 and proceeds to step S34.

ステップS34において、MPU4は、ウェアレベリング処理用ブロックアドレスにウェアレベリング対象の物理ブロックのアドレスを対応付ける。   In step S34, the MPU 4 associates the address of the wear leveling target physical block with the wear leveling block address.

ステップS26の後、ケース2に進む場合、ステップS35において、MPU4は、この消去処理フラグ0が対応付けられた物理ブロックに記憶されている1ページ分のデータをウェアレベリング処理用ブロックにコピーする。   When proceeding to case 2 after step S26, in step S35, the MPU 4 copies the data for one page stored in the physical block associated with the erasure processing flag 0 to the wear leveling processing block.

ステップS36において、データを1つの物理ブロック分だけコピーし終えたか否かを確認する。このステップS36において、MPU4は、1つの物理ブロック分のデータをコピーし終えたことを確認した場合はステップS37に進み、1つの物理ブロック分のデータをコピーし終えていないことを確認した場合はステップS44に進む。   In step S36, it is confirmed whether or not data has been copied for one physical block. In this step S36, if the MPU 4 confirms that the data for one physical block has been copied, the process proceeds to step S37. If the MPU 4 confirms that the data for one physical block has not been copied, Proceed to step S44.

ステップS37において、MPU4は、ウェアレベリング処理進捗情報をケース3に設定してステップS44に進む。なお、このケース2では、ステップS35において物理ブロックのデータが1ページずつコピーされるが、各物理ブロックに64ページ分のデータが記憶されるとすると、このケース2を経由する一連のウェアレベリング処理は、64回繰り返されることになる。   In step S37, the MPU 4 sets the wear leveling process progress information in case 3, and proceeds to step S44. In this case 2, the physical block data is copied page by page in step S35. However, if 64 pages of data are stored in each physical block, a series of wear leveling processing via this case 2 is performed. Will be repeated 64 times.

ステップS26の後、ケース3に進む場合、ステップS38において、MPU4は、ウェアレベリング処理フラグ0が付された物理ブロックに記憶されているデータを消去する。   When the process proceeds to case 3 after step S26, in step S38, the MPU 4 erases the data stored in the physical block to which the wear leveling processing flag 0 is attached.

ステップS39において、MPU4は、ウェアレベリング処理進捗情報をケース1に設定してステップS40に進む。   In step S39, the MPU 4 sets the wear leveling process progress information to case 1 and proceeds to step S40.

ステップS40において、MPU4は、消去処理フラグを1に設定し、ステップS41に進む。   In step S40, the MPU 4 sets the erasure processing flag to 1, and proceeds to step S41.

ステップS41において、MPU4は、ウェアレベリング処理フラグを1に設定し、ステップS42に進む。   In step S41, the MPU 4 sets the wear leveling processing flag to 1, and proceeds to step S42.

ステップS42において、MPU4は、ウェアレベリング処理用ブロックに設定されている物理アドレスの設定をクリアする。なお、このウェアレベリング処理は、セグメントを構成する全ての物理ブロックにおいてウェアレベリング処理フラグが1になった時点で終了する。   In step S42, the MPU 4 clears the setting of the physical address set in the wear leveling processing block. This wear leveling process ends when the wear leveling process flag is set to 1 in all physical blocks constituting the segment.

ステップS43において、MPU4は、ウェアレベリング処理を中断する。このステップS43の処理の詳細については、図11のフローチャートを参照しながら説明する。   In step S43, the MPU 4 interrupts the wear leveling process. Details of the process of step S43 will be described with reference to the flowchart of FIG.

ステップS430において、MPU4は、セグメント内のウェアレベリング中断処理を開始する。   In step S430, the MPU 4 starts the wear leveling interruption process in the segment.

ステップS431において、MPU4は、ウェアレベリング処理進捗情報を確認する。ステップS26の後、ケース2またはケース3に進む場合、ステップS431からステップS432に進み、MPU4は、ウェアレベリング処理用ブロックアドレスの物理ブロックに記憶されているデータを消去し、その後ステップS433に進む。また、ステップS26の後、ケース1に進む場合、ステップS431からステップS433に進む。   In step S431, the MPU 4 confirms wear leveling process progress information. When the process proceeds to case 2 or case 3 after step S26, the process proceeds from step S431 to step S432, and the MPU 4 erases the data stored in the physical block of the wear leveling block address, and then proceeds to step S433. When the process proceeds to case 1 after step S26, the process proceeds from step S431 to step S433.

ステップS433において、MPU4は、消去処理フラグを1に設定する。   In step S433, the MPU 4 sets the erasure processing flag to 1.

ステップS434において、MPU4は、ウェアレベリング処理フラグを1に設定する。   In step S434, the MPU 4 sets the wear leveling processing flag to 1.

ステップS435において、MPU4は、ウェアレベリング処理用ブロックに設定されている物理アドレスの設定をクリアする。   In step S435, the MPU 4 clears the setting of the physical address set in the wear leveling processing block.

ステップS436において、MPU4は、ウェアレベリング処理進捗情報をケース1に設定する。   In step S436, the MPU 4 sets the wear leveling process progress information in case 1.

ステップS437において、MPU4は、ウェアレベリング中断処理を終了する。   In step S437, the MPU 4 ends the wear leveling interruption process.

ステップS44において、一連のウェアレベリング処理は終了される。   In step S44, a series of wear leveling processing is terminated.

図9に戻り、ステップS9において、MPU4は、更新された管理情報を管理エリアに保存する。   Returning to FIG. 9, in step S9, the MPU 4 stores the updated management information in the management area.

ステップS10において、MPU4は、一連のデータ更新処理を終了する。   In step S10, the MPU 4 ends a series of data update processing.

このように、半導体記憶装置1では、不揮発性メモリ2Aの物理空間においてデータの書き込み頻度を分散させるように、具体的には、セグメント毎の外部機器からのデータの書き込み頻度が均一になるように物理アドレスと論理アドレスとを対応付けることにより、データの更新処理に伴うウェアレベリング処理をより高精度に実現できる。これにより、半導体記憶装置1では、不揮発性メモリの各物理ブロックに対する負荷をより均一化することが可能となる。   As described above, in the semiconductor memory device 1, specifically, the data write frequency from the external device for each segment is made uniform so that the data write frequency is distributed in the physical space of the nonvolatile memory 2 </ b> A. By associating the physical address with the logical address, the wear leveling process accompanying the data update process can be realized with higher accuracy. Thereby, in the semiconductor memory device 1, it is possible to make the load on each physical block of the nonvolatile memory more uniform.

なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。   It should be noted that the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the present invention.

例えば、上述の実施の形態では、一連のウェアレベリング処理を実行する手段として、MPU4を適用したが、本発明は、これに限らず、その他種々の構成を適用することが可能である。   For example, in the above-described embodiment, the MPU 4 is applied as a means for executing a series of wear leveling processes. However, the present invention is not limited to this, and various other configurations can be applied.

本発明は、不揮発性メモリを有する半導体記憶装置等に利用することが可能である。   The present invention can be used for a semiconductor memory device having a nonvolatile memory.

本実施の形態における半導体記憶装置の構成を示す図である。It is a figure which shows the structure of the semiconductor memory device in this Embodiment. 半導体記憶装置が備える不揮発性メモリの概略構成を示す図である。It is a figure which shows schematic structure of the non-volatile memory with which a semiconductor memory device is provided. 半導体記憶装置が備える不揮発性メモリの概略構成を示す図である。It is a figure which shows schematic structure of the non-volatile memory with which a semiconductor memory device is provided. 半導体記憶装置1における論理ブロックに対する論理アドレスの割り当て方法の一例を説明するための図である。3 is a diagram for explaining an example of a method for assigning a logical address to a logical block in the semiconductor memory device 1; FIG. 論理物理変換テーブルが管理する1セグメント当たりの物理空間と、この物理空間に対応する論理空間との関係を示す図である。It is a figure which shows the relationship between the physical space per segment which a logical physical conversion table manages, and the logical space corresponding to this physical space. データの更新処理の一例を説明するための図である。It is a figure for demonstrating an example of the update process of data. ウェアレベリング処理の一例を説明するための図である。It is a figure for demonstrating an example of a wear leveling process. セグメント内において消去処理フラグ0が付された物理ブロックを検索する方法の一例を説明するための図である。It is a figure for demonstrating an example of the method of searching the physical block to which the deletion process flag 0 was attached | subjected within the segment. 不揮発性メモリのセグメント内の物理ブロックの更新処理の処理動作を説明するためのフローチャートである。It is a flowchart for demonstrating the processing operation | movement of the update process of the physical block in the segment of a non-volatile memory. ウェアレベリング処理の処理動作の詳細について説明するためのフローチャートである。It is a flowchart for demonstrating the detail of the processing operation | movement of a wear leveling process. ウェアレベリング処理の処理動作の詳細について説明するためのフローチャートである。It is a flowchart for demonstrating the detail of the processing operation | movement of a wear leveling process. ウェアレベリング処理の中断処理の動作について説明するためのフローチャートである。It is a flowchart for demonstrating operation | movement of the interruption process of a wear leveling process. 従来の書き込み処理の一例を説明するための図である。It is a figure for demonstrating an example of the conventional write processing. 従来の書き込み処理の一例を説明するための図である。It is a figure for demonstrating an example of the conventional write processing.

符号の説明Explanation of symbols

1 半導体記憶装置、2 不揮発性メモリ、3 コントローラ、4 MPU、5 レジスタ、6 ECC、7 RAM、8 データバッファ、9 クロック生成部、10 バス、11 シリアルI/F、12 パラレルI/F   DESCRIPTION OF SYMBOLS 1 Semiconductor memory device, 2 Non-volatile memory, 3 Controller, 4 MPU, 5 Register, 6 ECC, 7 RAM, 8 Data buffer, 9 Clock generation part, 10 Bus, 11 Serial I / F, 12 Parallel I / F

Claims (6)

データの消去処理情報が対応付けられている所定数の物理ブロックからなるセグメントを複数有する不揮発性メモリと、
外部機器からのアクセス要求に応じて上記不揮発性メモリに対するデータの書き込み及び/又は読み出し制御を行うメモリ制御手段とを備え、
上記メモリ制御手段は、
上記セグメント内の一部の物理空間と、2つの異なる論理空間である第1の論理空間及び第2の論理空間とを対応付けて管理する論理物理変換手段と、
上記セグメント内の消去処理が実行されていない旨の上記消去処理情報が対応付けられている物理ブロックに記憶されているデータを上記セグメント内の他の物理ブロックに移動させるデータ移動手段とを有する
ことを特徴とする半導体記憶装置。
A non-volatile memory having a plurality of segments each having a predetermined number of physical blocks associated with data erasure processing information;
Memory control means for performing data write and / or read control on the nonvolatile memory in response to an access request from an external device,
The memory control means includes
Logical-physical conversion means for managing a part of the physical space in the segment in association with two different logical spaces, the first logical space and the second logical space;
Data moving means for moving the data stored in the physical block associated with the erasure processing information indicating that the erasure processing in the segment is not executed to another physical block in the segment; A semiconductor memory device.
上記論理物理変換手段は、上記不揮発性メモリが有する物理空間がセグメントS,S,・・・,Sn−1からなる場合、当該セグメントS,S,・・・,Sn−1がそれぞれ有する上記物理空間を、それぞれ第1の論理空間A0a及び第2の論理空間A0b、第1の論理空間A1a及び第2の論理空間A1b、・・・、第1の論理空間A(n−1)a及び第2の論理空間A(n−1)bと対応付けて管理し、
上記外部機器から取得されたデータは、論理空間A0a,A1a,・・・,A(n−1)a、論理空間A(n−1)b,・・・,A1b,A0bの順に書き込まれる
ことを特徴とする請求項1記載の半導体記憶装置。
When the physical space of the non-volatile memory is composed of segments S 0 , S 1 ,..., S n−1 , the logical-physical conversion means has the segments S 0 , S 1 ,. the physical space 1 has respectively, each of the first logical space a 0a and second logical space a 0b, the first logical space a 1a and the second logical space a 1b, · · ·, a first logic Managed in association with the space A (n-1) a and the second logical space A (n-1) b ,
The data acquired from the external device includes logical spaces A 0a , A 1a ,..., A (n−1) a , logical spaces A (n−1) b ,..., A 1b , A 0b . The semiconductor memory device according to claim 1, which is written in order.
上記データ移動手段は、データの消去処理が実行された旨の上記消去処理情報が対応付けられている上記物理ブロックに対してデータの消去処理が再度実行された場合に、上記データの移動処理を開始することを特徴とする請求項1記載の半導体記憶装置。   The data moving means performs the data moving process when the data erasing process is executed again for the physical block associated with the erasing process information indicating that the data erasing process has been executed. 2. The semiconductor memory device according to claim 1, wherein the semiconductor memory device is started. 上記データ移動手段は、上記物理ブロックに対応付けられている全ての上記消去処理情報においてデータの消去処理が実行された旨が示されるまで、上記データの移動処理を実行することを特徴とする請求項1記載の半導体記憶装置。   The data movement means executes the data movement processing until it is indicated that data erasure processing has been executed in all the erasure processing information associated with the physical block. The semiconductor memory device according to Item 1. 上記全ての消去処理情報においてデータの消去処理が実行された旨が示されたとき、データの消去処理が実行されていない旨を示すように全ての上記消去処理情報を更新することを特徴とする請求項4記載の半導体記憶装置。   When it is indicated that the data erasure process is executed in all the erasure process information, all the erasure process information is updated to indicate that the data erasure process is not executed. The semiconductor memory device according to claim 4. データの消去処理情報が対応付けられている所定数の物理ブロックからなるセグメントを複数有する不揮発性メモリを備える半導体記憶装置に用いられ、外部機器からのアクセス要求に応じて上記不揮発性メモリに対するデータの書き込み及び/又は読み出し制御を行うメモリ制御方法であって、
上記セグメント内の一部の物理空間と、2つの異なる論理空間である第1の論理空間及び第2の論理空間とを対応付けて管理し、上記セグメント内の消去処理が実行されていない旨の上記消去処理情報が対応付けられている物理ブロックに記憶されているデータを上記セグメント内の他の物理ブロックに移動させる
ことを特徴とするメモリ制御方法。
Used in a semiconductor storage device including a nonvolatile memory having a plurality of segments each having a predetermined number of physical blocks associated with data erasure processing information, and in response to an access request from an external device, A memory control method for performing writing and / or reading control,
A part of the physical space in the segment is managed in association with the first logical space and the second logical space which are two different logical spaces, and the erasure processing in the segment is not executed. A memory control method, comprising: moving data stored in a physical block associated with the erasure processing information to another physical block in the segment.
JP2007024453A 2007-02-02 2007-02-02 Semiconductor storage device and memory control method Pending JP2008191855A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007024453A JP2008191855A (en) 2007-02-02 2007-02-02 Semiconductor storage device and memory control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007024453A JP2008191855A (en) 2007-02-02 2007-02-02 Semiconductor storage device and memory control method

Publications (1)

Publication Number Publication Date
JP2008191855A true JP2008191855A (en) 2008-08-21

Family

ID=39751910

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007024453A Pending JP2008191855A (en) 2007-02-02 2007-02-02 Semiconductor storage device and memory control method

Country Status (1)

Country Link
JP (1) JP2008191855A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015222590A (en) * 2015-07-24 2015-12-10 株式会社東芝 Memory system
CN117632040A (en) * 2024-01-25 2024-03-01 合肥兆芯电子有限公司 Data writing method, memory storage device and memory control circuit unit

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07210468A (en) * 1994-01-18 1995-08-11 Hitachi Ltd Semiconductor auxiliary memory
JP2002278850A (en) * 2001-03-14 2002-09-27 Nec Corp Semiconductor device
WO2006067839A1 (en) * 2004-12-22 2006-06-29 Renesas Technology Corp. Storing apparatus and controller

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07210468A (en) * 1994-01-18 1995-08-11 Hitachi Ltd Semiconductor auxiliary memory
JP2002278850A (en) * 2001-03-14 2002-09-27 Nec Corp Semiconductor device
WO2006067839A1 (en) * 2004-12-22 2006-06-29 Renesas Technology Corp. Storing apparatus and controller

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015222590A (en) * 2015-07-24 2015-12-10 株式会社東芝 Memory system
CN117632040A (en) * 2024-01-25 2024-03-01 合肥兆芯电子有限公司 Data writing method, memory storage device and memory control circuit unit
CN117632040B (en) * 2024-01-25 2024-04-30 合肥兆芯电子有限公司 Data writing method, memory storage device and memory control circuit unit

Similar Documents

Publication Publication Date Title
JP4356686B2 (en) Memory device and memory control method
US8055873B2 (en) Data writing method for flash memory, and controller and system using the same
KR20190054974A (en) Memory system and operating method thereof
US20170228154A1 (en) Device and method for power loss protection in solid state drive
JP5983019B2 (en) Control device, storage device, and storage control method
US20150186224A1 (en) Data storage device and flash memory control method
US20090307413A1 (en) Data writing method for flash memory and storage system and controller using the same
US8510502B2 (en) Data writing method, and memory controller and memory storage apparatus using the same
US9021218B2 (en) Data writing method for writing updated data into rewritable non-volatile memory module, and memory controller, and memory storage apparatus using the same
US9058256B2 (en) Data writing method, memory controller and memory storage apparatus
US10168940B2 (en) Data storage using SLC and TLC memory banks and data maintenance method thereof
US9619380B2 (en) Data writing method, memory control circuit unit and memory storage apparatus
JP2006120082A (en) Memory card, semiconductor device, and control method for memory card
JP2013174975A (en) Memory system and data writing method for the same
TWI459198B (en) Memory storage device, memory controller thereof, and method for identifying valid data
JP5874525B2 (en) Control device, storage device, and storage control method
US9959044B2 (en) Memory device including risky mapping table and controlling method thereof
US10248526B2 (en) Data storage device and data maintenance method thereof
TW201321974A (en) Data writing method, memory controller and memory storage apparatus
JP2004326165A (en) Device and method for controlling memory
JP2007179479A (en) Memory controller and flash memory system
JP2008191855A (en) Semiconductor storage device and memory control method
CN103389943A (en) Control device, storage device, and storage control method
JP2012128900A (en) Semiconductor storage device and storage medium
JP3934659B1 (en) Memory controller and flash memory system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120509

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120522

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20121016