JPH0896588A - Semiconductor storage device - Google Patents

Semiconductor storage device

Info

Publication number
JPH0896588A
JPH0896588A JP23273994A JP23273994A JPH0896588A JP H0896588 A JPH0896588 A JP H0896588A JP 23273994 A JP23273994 A JP 23273994A JP 23273994 A JP23273994 A JP 23273994A JP H0896588 A JPH0896588 A JP H0896588A
Authority
JP
Japan
Prior art keywords
block
unused
storage
unit
data
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
JP23273994A
Other languages
Japanese (ja)
Inventor
Minoru Akiyama
実 秋山
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP23273994A priority Critical patent/JPH0896588A/en
Publication of JPH0896588A publication Critical patent/JPH0896588A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE: To prolong the device service life of a semiconductor storage device using nonvolatile memory elements having the limit of the number of rewriting. CONSTITUTION: A data storage area 11 is divided into independently rewritable plural storage blocks and rewriting is performed by writing data after rewriting data in an unassigned storage block and by changing a corresponding access objective block to a corresponding logical address. An unused block searching part 14 specifies an unused block to be used based on service situation information, an unused block list set at the time of an erasure initialization and an unused block chain similarily set at the time of the erasure. In the case where the unassigned block is not searched by the unused block searching part 14, an erasure managing part 15 secures the unused block by performing a physical erasure initialization including the saving and the changing of writing of effective data.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、書換回数に制限のある
不揮発性メモリ素子を用いた半導体記憶装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a semiconductor memory device using a nonvolatile memory element having a limited number of rewrites.

【0002】[0002]

【従来の技術】近年、情報機器の外部記憶装置として、
フラッシュEEPROM等の不揮発性半導体メモリ素子
を用いた記憶装置が注目されている。特に、携帯型情報
機器に対しては、耐衝撃性が高く、小型で消費電力が低
いという利点から、不揮発性メモリカードとして、また
は、HDD代替製品として期待されている。
2. Description of the Related Art Recently, as an external storage device for information equipment,
A storage device using a non-volatile semiconductor memory element such as a flash EEPROM is drawing attention. In particular, for portable information equipment, it is expected to be used as a non-volatile memory card or as an HDD substitute product because of its advantages of high impact resistance, small size, and low power consumption.

【0003】一般に、EEPROMでは、書換にあたっ
てブロック一括消去が必要である。したがって、書換
は、当該ブロックのデータを読み込み、当該ブロックを
消去し、データの必要箇所を修正して書き戻すという手
順を踏むことになる。
Generally, in EEPROM, block rewriting is required for rewriting. Therefore, rewriting involves the steps of reading the data of the block, erasing the block, correcting the necessary part of the data and writing it back.

【0004】この書換動作にともなって、EEPROM
には、記録消去特性に劣化が生ずるという欠点があっ
て、書換回数が制限されている。ところで、情報装置の
外部記憶装置においては、一部領域に書換が集中して頻
繁に生ずることが有り得るため、このような場合には、
装置寿命が素子の書換回数制限によって規定され短くな
ってしまうという問題があった。この問題に対して、E
EPROMの書換回数制限をシステム的に回避・(中
点)緩和し、装置寿命を疑似的に延長する手法が、従来
から多く検討されてきた。
With this rewriting operation, the EEPROM is
Has a drawback that the recording and erasing characteristics are deteriorated, and the number of times of rewriting is limited. By the way, in the external storage device of the information device, rewriting may occur frequently in a partial area, so in such a case,
There has been a problem that the device life is shortened by being limited by the number of times of rewriting of the element. For this problem, E
Conventionally, many techniques have been studied for avoiding the EPROM rewrite frequency limit systematically (all the way down) and artificially extending the device life.

【0005】そのうちの第1のものに、揮発性メモリと
組み合わせ、運用時には、この揮発メモリを使用して電
源OFFなどの時にのみ揮発性メモリから不揮発性メモ
リにバックアップ複写するという手法がある。
The first of these is a method of combining with a volatile memory and using this volatile memory during operation to perform backup copying from the volatile memory to the non-volatile memory only when the power is turned off.

【0006】また、第2の従来例として、特開昭63−
167498、特開昭63−181190、特開平01
−277397、特開平04−030399に開示され
ているように、書換単位ブロックに比較してかなり小さ
な量のデータを繰り返し書き込むことを想定して、書換
単位ブロックを複数領域に分割して順次書き込み、消去
書換回数を減ずる手法、さらに第3の従来例として、特
開平02−023598、特開平02−053299、
特開平02−206097、特開平02−31089
6、特開平03−142794、特開平04−3012
97に開示されているように、独立に書換可能な複数の
記憶ブロックを一つのデータに割り当て、書換を分散さ
せることで装置寿命の延長を図る手法もある。
A second conventional example is Japanese Patent Laid-Open No. 63-
167498, JP-A 63-181190, JP-A 01
-277397, Japanese Patent Laid-Open No. 04-030399, the rewriting unit block is divided into a plurality of areas and sequentially written, assuming that a considerably small amount of data is repeatedly written as compared with the rewriting unit block. A method of reducing the number of times of erasure rewriting, and further, as a third conventional example, JP-A-02-023598, JP-A-02-053299,
JP-A-02-206097, JP-A-02-31089
6, JP-A-03-142794, JP-A-04-3012
As disclosed in 97, there is also a method of extending the life of the device by allocating a plurality of independently rewritable storage blocks to one data and distributing the rewriting.

【0007】[0007]

【発明が解決しようとする課題】しかしながら、上述の
第1の従来技術では、揮発性メモリと不揮発性メモリの
2重構造となるので、構造が複雑でコスト的にも不利で
ある。
However, in the above-mentioned first conventional technique, since the volatile memory and the non-volatile memory have a double structure, the structure is complicated and it is disadvantageous in terms of cost.

【0008】また、第2,第3の従来技術では、見かけ
上の記憶容量が1/領域数、または1/ブロック数とな
って、全ての領域にわたって冗長性が高いので書換頻度
の低いブロックに対しては無駄が生じるという問題点が
ある。
Further, in the second and third prior arts, the apparent storage capacity is 1 / the number of regions or 1 / the number of blocks, and since the redundancy is high over all the regions, the blocks are rewritten less frequently. On the other hand, there is a problem that waste occurs.

【0009】[0009]

【課題を解決するための手段】本発明の装置は、書換回
数制限がある不揮発性メモリ素子を用いた半導体記憶装
置であって、書換回数制限のある不揮発性メモリ素子で
構成される記憶領域上に、少なくとも1つの独立に書込
可能な記憶ブロックから構成される、独立に消去可能な
消去単位ブロックを少なくとも1つ具備するデータ記憶
部と、入力された論理アドレスから前記記憶ブロックの
一つを指定する物理アドレスデータを算出するブロック
選択部と、前記データ記憶部から、データが記録されて
いない未使用記憶ブロックの一つを探索し選択する未使
用ブロック探索部と、前記記憶ブロックの消去初期化を
管理する消去管理部とを有し、書換の際に、書換データ
を前記ブロック探索部で選択された未使用記憶ブロック
に書き込むとともに、前記ブロック選択部での選択対象
記憶ブロックを前記選択された未使用記憶ブロックに変
更することを特徴とする。
A device of the present invention is a semiconductor memory device using a non-volatile memory element having a limited number of rewrites, and is on a storage area composed of a non-volatile memory element having a limited number of rewrites. And a data storage unit comprising at least one independently erasable erase unit block composed of at least one independently writable storage block, and one of the storage blocks from the input logical address. A block selection unit for calculating physical address data to be designated, an unused block search unit for searching and selecting one of unused storage blocks in which no data is recorded from the data storage unit, and an initial erase of the storage block. And an erasure management unit that manages erasing, and at the time of rewriting, writes rewriting data to an unused storage block selected by the block searching unit. , And changes the selected target storage blocks in said block selector to unused storage blocks said selected.

【0010】[0010]

【実施例】次に、図を用いて本発明にかかる半導体記憶
装置について説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, a semiconductor memory device according to the present invention will be described with reference to the drawings.

【0011】図1は本発明の半導体記憶装置の構成例の
ブロック図を示す。
FIG. 1 shows a block diagram of a configuration example of a semiconductor memory device of the present invention.

【0012】データ記憶部11は、書換回数制限のある
記憶素子で構成され、独立に消去が可能な複数の消去単
位ブロックに分割されている。各々の消去単位ブロック
は、複数の記憶ブロックと管理情報領域を含んでいる。
The data storage section 11 is composed of a storage element having a limited number of rewrites, and is divided into a plurality of erase unit blocks which can be independently erased. Each erase unit block includes a plurality of storage blocks and a management information area.

【0013】データ制御部12は、外部とのデータ入出
力、データバッファ機能、データ記憶部11に対するR
/W制御、ブロック内アドレス制御等を管理している。
The data control unit 12 inputs / outputs data to / from the outside, a data buffer function, and R for the data storage unit 11.
/ W control, in-block address control, etc. are managed.

【0014】ブロック選択部13は、データ制御部12
から供給される論理アドレスデータを基にデータ記憶部
11から単一の記憶ブロックを選択する。選択は、アド
レスデータに対する物理的ブロック番号で構成されたア
ドレス変換テーブルを参照することで実現することがで
きる。そして、読出/書込時のデータ記憶部11に対す
るアドレス指定は、ブロック選択部13がデータ制御部
12から供給される論理アドレスデータを基に選択す
る、読出/書込対象の記憶ブロックの物理番号をブロッ
ク内アドレスと合わせ、データ制御部12がデータ記憶
部11に物理アドレスとして出力することによって行わ
れる。
The block selection unit 13 includes a data control unit 12
A single storage block is selected from the data storage unit 11 based on the logical address data supplied from the. The selection can be realized by referring to the address conversion table configured by the physical block number for the address data. The address designation for the data storage unit 11 at the time of reading / writing is performed by the block selection unit 13 based on the logical address data supplied from the data control unit 12, and is the physical number of the storage block to be read / written. Is combined with the in-block address, and the data control unit 12 outputs it to the data storage unit 11 as a physical address.

【0015】未使用ブロック探索部14は、データ記憶
部11から、データが記録されていない未使用記憶ブロ
ックの一つを探索し選択する。
The unused block search unit 14 searches and selects one of the unused storage blocks in which no data is recorded from the data storage unit 11.

【0016】消去管理部15は、データ記憶部11から
有効データを待避した後、消去し、有効データをデータ
記憶部11に書き戻すことで、データ記憶部11の記憶
領域の消去初期化を行う。
The erasure management unit 15 initializes the erasure of the storage area of the data storage unit 11 by saving the valid data from the data storage unit 11, erasing the valid data, and writing the valid data back to the data storage unit 11. .

【0017】データ記憶部11の記憶ブロックを書き換
える際には、未使用ブロック探索部14が未使用記憶ブ
ロックの一つを選択し、選択された未使用記憶ブロック
に書換後データを書き込むとともに、ブロック選択部1
3におけるアドレス変換テーブルを、新たにデータを書
き込んだ記憶ブロックが論理アドレスデータに対応して
選択されるよう変更する。未使用ブロック探索部14で
未使用記憶ブロックが発見できなかった場合には、消去
管理部15により、消去初期化を行って未使用記憶ブロ
ックを確保し、再度、未使用ブロック探索部14を動作
させることにより、書換に用いる未使用記憶ブロックを
特定する。
When the storage block of the data storage unit 11 is rewritten, the unused block search unit 14 selects one of the unused storage blocks, writes the rewritten data into the selected unused storage block, and Selector 1
The address conversion table in 3 is changed so that the memory block in which the data has been newly written is selected corresponding to the logical address data. When the unused storage block cannot be found by the unused block search unit 14, the erase management unit 15 performs erase initialization to secure an unused storage block, and operates the unused block search unit 14 again. By doing so, an unused storage block used for rewriting is specified.

【0018】次に、使用すべき未使用記憶ブロックを特
定するための3つの実施例について述べる。
Next, three embodiments for identifying unused storage blocks to be used will be described.

【0019】第1の実施例では、未使用記憶ブロックの
探索を、使用状況情報領域を読み出し、判定することで
行う。
In the first embodiment, an unused storage block is searched for by reading the usage status information area and determining it.

【0020】使用状況情報は、記憶ブロック各々の状況
に対応するフラグ群から構成できる。登録されている使
用状況情報は、記憶ブロックの各々の状況を常に反映し
ている必要がある。すなわち、使用されているか否かを
示す情報に対しては、記憶ブロックに書き込みを行う際
には、対応する使用済であることを示すフラグをセット
し、記憶ブロックの消去初期化を行う際には、対応する
フラグをクリアする必要がある。
The usage status information can be composed of a flag group corresponding to the status of each storage block. The registered usage status information needs to always reflect the status of each storage block. That is, for information indicating whether or not it is used, when writing to a storage block, a corresponding flag indicating that it is used is set, and when erasing initialization of the storage block is performed. Must clear the corresponding flag.

【0021】使用状況情報は、対応する記憶ブロックと
同時に消去初期化すればよいので、書換回数制限のある
記憶素子で構成されたデータ記憶部11に格納すること
もできる。全記憶ブロックを一括して消去する手法を採
る場合には、まとめて格納することができるが、消去単
位ブロック毎に消去初期化を行う場合には、少なくとも
消去単位ブロック毎に、各消去単位ブロックの一部領域
に格納するか、または、対応する消去単位ブロックの消
去初期化に連動して独立に消去初期化可能な領域に格納
し、分散させる必要がある。いづれの場合でも、さらに
分散して、各記憶ブロック毎に格納することもできる。
Since the use status information may be erase-initialized at the same time as the corresponding storage block, it can be stored in the data storage section 11 constituted by a storage element having a limited number of rewrites. When the method of collectively erasing all storage blocks is adopted, they can be stored collectively. However, when erase initialization is performed for each erase unit block, each erase unit block must be at least erased. It is necessary to store the data in a partial area of the above, or to store the data in an area that can be independently erase-initialized in association with the erase initialization of the corresponding erase unit block and disperse it. In any case, the data can be further distributed and stored for each storage block.

【0022】図2は、上述の第1の実施例における未使
用ブロック探索部14のブロック図である。
FIG. 2 is a block diagram of the unused block search unit 14 in the above-mentioned first embodiment.

【0023】本使用ブロック探索部14は、前回に探索
指定された記憶ブロックの物理ブロック番号を格納する
記憶回路21と、判定すべき記憶ブロックの物理ブロッ
ク番号を出力し、使用状況情報領域の対応する部分を読
み出す使用状況読出器22、読み出された使用状況情報
を判定する判定器23を具備することで構成できる。
The used block search unit 14 outputs the storage circuit 21 for storing the physical block number of the storage block previously searched and designated, and the physical block number of the storage block to be determined to correspond to the use status information area. It can be configured by including a usage status reader 22 for reading out a portion to be used and a determiner 23 for judging the read usage status information.

【0024】使用状況読出器22の出力ブロック番号
は、探索開始時に、記憶回路21が示す記憶ブロック番
号に1を加えた番号に初期化される。以後、この出力ブ
ロック番号は未使用記憶ブロックが検出されるまで、ま
たは、最終記憶ブロックに到達するまでインクリメント
される。このような構成の採用により、前回に探索指定
された記憶ブロックの次の記憶ブロックから、未使用で
あるか否かの判定を開始することにより、探索時間の低
減を図ることができる。
The output block number of the usage status reader 22 is initialized to a number obtained by adding 1 to the storage block number indicated by the storage circuit 21 at the start of the search. Thereafter, this output block number is incremented until an unused storage block is detected or the final storage block is reached. By adopting such a configuration, the search time can be shortened by starting the determination as to whether or not the storage block is the unused one from the storage block next to the storage block previously designated for search.

【0025】判定器23は、読み出された使用状況情報
を記憶ブロック毎に判定する。未使用記憶ブロックを検
出した場合には、該当する記憶ブロック番号を、データ
制御器12に通知するとともに、記憶回路21に格納す
る。最終記憶ブロックの検査が終了した時点で、未使用
記憶ブロックが検出できなかった場合には、未使用記憶
ブロックが検出できなかったことをデータ制御部12に
通知する。
The determiner 23 determines the read usage status information for each storage block. When an unused storage block is detected, the corresponding storage block number is notified to the data controller 12 and stored in the storage circuit 21. When the unused storage block cannot be detected when the inspection of the final storage block is completed, the data control unit 12 is notified that the unused storage block has not been detected.

【0026】未使用記憶ブロックが検出できなかった場
合には、図1の消去管理部15は、消去単位ブロックを
選択し、消去初期化を行って未使用記憶ブロックを確保
する。その際、使用状況情報等の管理情報をも初期化
し、記憶回路21に次回探索を開始すべき記憶ブロック
番号から1を引いた番号を格納する。
When the unused storage block cannot be detected, the erase management unit 15 in FIG. 1 selects an erase unit block and performs erase initialization to secure the unused storage block. At that time, the management information such as the usage status information is also initialized, and the storage circuit 21 stores a number obtained by subtracting 1 from the storage block number to start the next search.

【0027】次に、第2の実施例では、未使用記憶ブロ
ックの探索を、データ記憶部11にを消去初期化する際
に、未使用記憶ブロックのアドレス情報のリストを作成
し、アドレス情報領域に格納しておき、未使用記憶ブロ
ックアドレスを順次アドレス情報領域から読み出すこと
で行う。
Next, in the second embodiment, when searching for an unused storage block and erasing and initializing it in the data storage unit 11, a list of address information of the unused storage block is created, and an address information area is created. This is done by reading the unused storage block addresses sequentially from the address information area.

【0028】アドレス情報は、記憶ブロックの消去初期
化にともなって、新たに確保された未使用記憶ブロック
番号をリストに加えていくことになる。
As the address information, the newly secured unused storage block number is added to the list as the storage block is erased and initialized.

【0029】図3は、このような第2の実施例における
未使用ブロック探索部14の構成例のブロック図を示
す。
FIG. 3 is a block diagram showing a configuration example of the unused block search section 14 in the second embodiment as described above.

【0030】本未使用ブロック探索部14は、アドレス
情報領域上のアドレス情報リストにおける前回指定位置
を記憶する記憶回路31と、リストの最後尾位置を記憶
する記憶回路32と、記憶回路31と32の内容を比較
する比較器33と、記憶回路31に記憶された位置の次
の位置に格納された未使用記憶ブロック番号を読み出す
アドレス読出器34を具備することで構成できる。
The unused block search unit 14 stores a memory circuit 31 for storing the previously designated position in the address information list on the address information area, a memory circuit 32 for storing the last position of the list, and the memory circuits 31 and 32. It can be configured by including a comparator 33 for comparing the contents of the above, and an address reader 34 for reading an unused storage block number stored at a position next to the position stored in the storage circuit 31.

【0031】比較器33は、記憶回路31と32の内容
が一致した場合には、未使用記憶ブロックが存在しない
ことをデータ制御部12に通知する。一致しない場合に
は、アドレス読出器34を動作させ、未使用記憶ブロッ
ク番号をデータ制御部12に通知させる。
When the contents of the storage circuits 31 and 32 match, the comparator 33 notifies the data control unit 12 that there is no unused storage block. If they do not match, the address reader 34 is operated to notify the data control unit 12 of the unused storage block number.

【0032】未使用記憶ブロックが検出できなかった場
合に、消去管理部15は、消去単位ブロックを選択し、
消去初期化を行って未使用記憶ブロックを確保する。そ
の際、アドレス情報リストに確保した未使用記憶ブロッ
クの番号を追加するとともに、記憶回路32のリスト最
後尾位置データを更新する。
When the unused storage block cannot be detected, the erase management section 15 selects an erase unit block,
Erase initialization is performed to secure unused storage blocks. At that time, the number of the reserved unused storage block is added to the address information list, and the list end position data of the storage circuit 32 is updated.

【0033】次に、第3の実施例では、未使用記憶ブロ
ックの探索を、データ記憶部11を消去初期化する際
に、未使用記憶ブロック各々に対して、次に使用すべき
未使用記憶ブロックを指し示す接続情報を作成し、接続
情報領域に格納しておき、未使用記憶ブロックアドレス
を順次接続情報領域から読み出すことで行う。
Next, in the third embodiment, when searching for an unused storage block, when erasing and initializing the data storage unit 11, the unused storage block to be used next for each unused storage block. This is done by creating connection information indicating a block, storing it in the connection information area, and sequentially reading unused storage block addresses from the connection information area.

【0034】接続情報は、使用状況情報と同様に、デー
タ記憶部11におくこともできる。対応する記憶ブロッ
クと同時に消去初期化する必要があるので、全記憶ブロ
ックを一括して消去する場合には、まとめて格納するこ
とができるが、消去単位ブロック毎に消去初期化を行う
場合には、少なくとも消去単位ブロック毎に、各消去単
位ブロックの一部領域に格納するか、または、対応する
消去単位ブロックの消去初期化に連動して独立に消去初
期化可能な領域に格納し、分散させる必要がある。いづ
れの場合でも、さらに分散して、各記憶ブロック毎に格
納することもできる。
The connection information can be stored in the data storage unit 11, like the usage information. Since it is necessary to perform erase initialization at the same time as the corresponding memory block, it is possible to store all memory blocks in a batch when they are erased collectively, but when performing erase initialization for each erase unit block , At least for each erase unit block, stored in a partial area of each erase unit block, or stored in an area that can be independently erase-initialized in association with erase initialization of the corresponding erase-unit block and distributed. There is a need. In any case, the data can be further distributed and stored for each storage block.

【0035】また、未使用記憶ブロックの接続チェーン
は、全記憶ブロックを一括して消去する場合は一つにつ
ながり、消去単位ブロック毎に消去初期化を行う場合に
は、消去単位ブロック毎になる。未使用記憶ブロックチ
ェーンの最後尾の未使用記憶ブロックに対しては、チェ
ーンの最後尾であることを示す情報を接続情報領域に格
納しておく。
Further, the connection chain of unused storage blocks is connected when erasing all storage blocks at once, and is connected for each erasing unit block when erasing initialization is performed for each erasing unit block. . For the last unused storage block of the unused storage block chain, information indicating the last of the chain is stored in the connection information area.

【0036】図4は、上述の第3の実施例における未使
用ブロック探索部14の構成例のブロック図を示す。
FIG. 4 shows a block diagram of a configuration example of the unused block search unit 14 in the above-mentioned third embodiment.

【0037】本未使用ブロック探索部14は、前回指定
された未使用記憶ブロック番号を記憶する記憶回路41
と、記憶回路41に記憶された記憶ブロック番号に対応
する接続情報をデータを読み出す接続情報読出器42
と、読み出された接続情報を判定する判定器43を具備
することで構成できる。
The unused block search unit 14 stores the unused memory block number designated last time in the memory circuit 41.
And a connection information reader 42 for reading out the connection information corresponding to the storage block number stored in the storage circuit 41.
And a determination device 43 for determining the read connection information.

【0038】判定器43は、読み出された接続情報が、
未使用記憶ブロックチェーンの最後尾であることを示し
ている場合には、次回探索においては、FIFOメモリ
となっている記憶回路44から未使用記憶ブロック番号
を読み取り出力する。記憶回路44が空である場合に
は、未使用記憶ブロックを検出できなかったことをデー
タ制御部12に通知し、未使用記憶ブロック番号を示し
ている場合には、該当未使用記憶ブロック番号をデータ
制御部12に通知する。
The judging device 43 judges that the read connection information is
When it is indicated that it is at the end of the unused storage block chain, in the next search, the unused storage block number is read and output from the storage circuit 44 which is the FIFO memory. If the storage circuit 44 is empty, the data control unit 12 is notified that the unused storage block could not be detected, and if the unused storage block number is indicated, the corresponding unused storage block number is set. The data control unit 12 is notified.

【0039】未使用記憶ブロックが検出できなかった場
合に、消去管理部15は、消去単位ブロックを選択し、
消去初期化を行って未使用記憶ブロックを確保する。そ
の際、接続情報を設定して未使用記憶ブロックチェーン
の構築を行うとともに、未使用記憶ブロックチェーンの
先頭の記憶ブロックの番号を記憶回路44に登録する。
When the unused storage block cannot be detected, the erase management unit 15 selects an erase unit block,
Erase initialization is performed to secure unused storage blocks. At that time, the connection information is set to construct an unused storage block chain, and the number of the first storage block of the unused storage block chain is registered in the storage circuit 44.

【0040】次に、未使用記憶ブロックを確保するため
に行う記憶ブロックの消去初期化の範囲設定に係る2種
類の実施例について述べる。
Next, two types of embodiments relating to the setting of the range of the erase initialization of the memory block to secure the unused memory block will be described.

【0041】そのうちの第1のもの(本発明の第4の実
施例)は、記憶ブロックの消去初期化を全記憶ブロック
一括して行う。
The first one (fourth embodiment of the present invention) performs erase initialization of memory blocks in a batch of all memory blocks.

【0042】この場合には、データ記憶部11を一つの
領域として使用することができるため、各種処理が単純
化される。また、記憶素子の消去動作を平均して行うこ
とが可能となる。現実には、有効データを待避させる一
時メモリ領域の大きさが限られていることや記憶素子自
体の物理的構成に依存して、消去単位ブロック毎に行う
ことも有り得る。
In this case, since the data storage unit 11 can be used as one area, various processes are simplified. Further, it becomes possible to average the erase operation of the memory elements. In reality, the temporary memory area for saving valid data may be limited in size and may be performed for each erase unit block depending on the physical configuration of the storage element itself.

【0043】また、第2のもの(本発明の第5の実施
例)は、記憶ブロックの消去初期化を複数の消去単位ブ
ロックを一時に1ブロックずつ順次に行う。
In the second one (fifth embodiment of the present invention), erase initialization of a memory block is sequentially performed one block at a time for a plurality of erase unit blocks.

【0044】この場合には、消去対象となる消去単位ブ
ロックを選択する消去ブロック選択部が必要となる。消
去ブロック選択部は、例えば、消去動作毎にインクリメ
ント動作を行い、最終消去単位ブロックを指し示した後
は最初の消去単位ブロックを指し示すよう初期化される
カウンタで構成することができる。このように消去単位
ブロックを順次選択することで、記憶素子の消去動作を
平均して行うことが可能となる。また、消去初期化動作
を分割して行うことにより、消去初期化待ち時間を分散
させることができる。
In this case, an erase block selecting section for selecting an erase unit block to be erased is required. The erase block selection unit may be configured by, for example, a counter that performs an increment operation for each erase operation and is initialized to point to the first erase unit block after pointing to the final erase unit block. By sequentially selecting the erase unit blocks in this manner, it becomes possible to average the erase operation of the memory elements. In addition, the erase initialization waiting time can be dispersed by dividing the erase initialization operation.

【0045】上述の第4の実施例においても、第5の実
施例においても、消去単位ブロックを消去初期化しても
未使用記憶ブロックが得られない場合には、該当消去単
位ブロックを消去しないように、処理を設定することも
できる。例えば、消去単位ブロックに、消去初期化を行
えば未使用記憶ブロックが確保できるか否かを示すフラ
グ情報領域を設け、書換を行う際に、アクセス対象から
はずれる古いデータが格納されている記憶ブロックが含
まれている。消去単位ブロックの情報領域のフラグを立
てるものとする。この場合には、消去の際に、該当消去
単位ブロックのフラグ情報領域を参照することで、消去
すべきか否かを判定することができる。
In both the fourth embodiment and the fifth embodiment described above, if an unused memory block cannot be obtained even if the erase unit block is erase-initialized, the erase unit block is not erased. It is also possible to set the process. For example, the erase unit block is provided with a flag information area indicating whether or not an unused storage block can be secured by performing erase initialization, and when rewriting, a storage block in which old data that is out of the access target is stored It is included. A flag in the information area of the erase unit block is set. In this case, at the time of erasing, it is possible to determine whether or not to erase by referring to the flag information area of the corresponding erase unit block.

【0046】また、消去に先立って、有効データを一時
メモリに待避させなければならない。記憶ブロックが有
効データを含んでいるか否かを判定する手法としては、
例えば、アドレス変換テーブルを用いることが考えられ
る。すなわち、アドレス変換テーブルに物理記憶ブロッ
ク番号が登録されている記憶ブロックが有効データを含
んでいることを利用して判定を行うことができる。ただ
し、この手法では対象記憶ブロックが有効データを含ん
でいるか否かを判定するため、アドレス変換テーブル全
体をサーチ比較する必要がある。
Prior to erasing, valid data must be saved in the temporary memory. As a method for determining whether the storage block contains valid data,
For example, it is possible to use an address conversion table. That is, the determination can be made by utilizing that the storage block whose physical storage block number is registered in the address conversion table contains valid data. However, in this method, it is necessary to search and compare the entire address conversion table in order to determine whether or not the target storage block contains valid data.

【0047】他の手法としては、各記憶ブロックに対し
て、有効データを含んでいるか否かを示す情報を登録す
る有効性情報領域を設け、前述の第1の実施例における
使用状況情報と組み合わせることで判定を下すことがで
きる。つまり、書換の際に、古いデータを保持しており
有効でないデータをいる場合に、有効性情報領域の対応
する位置にフラグを立てることとすれば、使用状況情報
で使用されていることが示され、かつ、有効性情報でデ
ータが有効でないことが示されていない記憶ブロック
が、有効データを含んでいるものと判定できる。
As another method, for each storage block, a validity information area for registering information indicating whether or not valid data is included is provided and combined with the use status information in the first embodiment. You can make a decision. In other words, at the time of rewriting, if old data is held and there is invalid data, setting a flag at the corresponding position in the validity information area indicates that it is used in the usage status information. It is possible to determine that a storage block that has been stored and whose validity information does not indicate that the data is not valid contains valid data.

【0048】次に、未使用記憶ブロック確保を開始する
時期に係る3つの実施例について述べる。
Next, three embodiments relating to the timing of starting to reserve an unused storage block will be described.

【0049】そのうちの第1のもの(本発明の第6の実
施例)では、書換の際に使用する未使用記憶ブロックを
書換開始時点で探索する。
In the first one (sixth embodiment of the present invention), an unused storage block used at the time of rewriting is searched at the start of rewriting.

【0050】また、第2のもの(本発明の第7の実施
例)は、書換終了時に、未使用ブロック探索部14を動
作させ、次回書換時に使用すべき未使用ブロックを確保
する構成としている。この結果、次回の書換動作が起こ
るまでに、未使用記憶ブロックを用意しておくことがで
き、書換の際の未使用記憶ブロックを確保するための待
ち時間を見かけ上なくすことができる。特に、記憶ブロ
ックの消去がバックグラウンドで処理される場合には、
効果的であると考えられる。ただし、次回使用する未使
用記憶ブロックの番号を記憶する記憶回路が必要とな
る。
The second one (seventh embodiment of the present invention) is configured to operate the unused block search unit 14 at the end of rewriting to secure an unused block to be used at the next rewriting. . As a result, an unused storage block can be prepared before the next rewriting operation, and the waiting time for securing the unused storage block at the time of rewriting can be apparently eliminated. Especially when erasing storage blocks is processed in the background,
Considered to be effective. However, a storage circuit for storing the number of an unused storage block to be used next time is required.

【0051】また、第3のもの(本発明の第8の実施
例)は、予め設定した記憶ブロック数を上限とした複数
記憶ブロックの書換を可能とし、確保した未使用ブロッ
クが、予め設定した記憶ブロック数を下回った際に、未
使用ブロック探索部14を動作させる。この結果、予め
設定されたブロック数の書換を連続的に行うことを可能
とし、書換動作における未使用記憶ブロックを確保する
ための待ち時間のさらなる低減を図っている。未使用記
憶ブロックの番号を記憶するFIFOメモリ等が必要で
ある。
The third one (eighth embodiment of the present invention) enables rewriting of a plurality of storage blocks with a preset number of storage blocks as an upper limit, and the reserved unused block is preset. When the number of storage blocks is reduced, the unused block search unit 14 is operated. As a result, the preset number of blocks can be continuously rewritten, and the waiting time for reserving unused storage blocks in the rewriting operation is further reduced. A FIFO memory or the like for storing the numbers of unused storage blocks is required.

【0052】さらに、前述の本発明の第2の実施例にお
ける未使用ブロック探索部14と組み合わせて構成する
こともできる。すなわち、未使用記憶ブロックを記憶す
るためにメモリを未使用ブロック探索部14で使用する
アドレス情報リストと兼用し、消去初期化により未使用
記憶ブロックを確保する際に、予め設定したブロック数
に達するまで一つ以上の消去単位ブロックの消去初期化
を行い、アドレス情報リストに登録するよう構成すれば
よい。
Further, it may be constructed in combination with the unused block searching unit 14 in the above-mentioned second embodiment of the present invention. That is, when the unused memory block is stored, the memory is also used as the address information list used by the unused block search unit 14, and when the unused memory block is secured by the erase initialization, the preset number of blocks is reached. Up to one erase unit block may be erase-initialized and registered in the address information list.

【0053】[0053]

【発明の効果】本発明にかかる半導体記憶装置において
は、メモリ素子の物理的消去回数を低減することがで
き、さらに、消去回数を平均化することもできる。した
がって、書換回数に制限のある不揮発性メモリ素子を用
いて構築された半導体記憶装置においても、素子の書換
制限を回避緩和することが可能となり、装置寿命を延長
させることができる。さらに、本発明にかかる半導体記
憶装置は簡便に実現可能である。
In the semiconductor memory device according to the present invention, the number of physical erases of the memory element can be reduced and the number of erases can be averaged. Therefore, even in a semiconductor memory device constructed using a non-volatile memory element having a limited number of rewrites, it is possible to avoid the relaxation of the element rewrite and relax the life of the device. Further, the semiconductor memory device according to the present invention can be easily realized.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の半導体記憶装置の構成例のブロック図
である。
FIG. 1 is a block diagram of a configuration example of a semiconductor memory device of the present invention.

【図2】本発明の第1の実施例における未使用ブロック
探索部の構成例のブロック図である。
FIG. 2 is a block diagram of a configuration example of an unused block search unit in the first exemplary embodiment of the present invention.

【図3】本発明の第2の実施例における未使用ブロック
探索部の構成例のブロック図である。
FIG. 3 is a block diagram of a configuration example of an unused block search unit according to a second embodiment of the present invention.

【図4】本発明の第3の実施例における未使用ブロック
探索部の構成例のブロック図である。
FIG. 4 is a block diagram of a configuration example of an unused block search unit in the third exemplary embodiment of the present invention.

【符号の説明】[Explanation of symbols]

11 データ記憶部 12 データ制御部 13 ブロック選択部 14 未使用ブロック探索部 15 消去管理部 21 記憶回路 22 使用状況読出器 23 判定器 31 記憶回路 32 記憶回路 33 比較器 34 アドレス読出器 41 記憶回路 42 接続情報読出器 43 判定器 44 記憶回路 11 Data Storage Section 12 Data Control Section 13 Block Selection Section 14 Unused Block Search Section 15 Erase Management Section 21 Storage Circuit 22 Usage Status Reader 23 Judgment Device 31 Storage Circuit 32 Storage Circuit 33 Comparator 34 Address Reader 41 Storage Circuit 42 Connection information reader 43 Judgment device 44 Storage circuit

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】書換回数制限がある不揮発性メモリ素子を
用いた半導体記憶装置であって、 書換回数制限のある不揮発性メモリ素子で構成される記
憶領域上に、少なくとも1つの独立に書込可能な記憶ブ
ロックから構成される、独立に消去可能な消去単位ブロ
ックを少なくとも1つ具備するデータ記憶部と、 入力された論理アドレスから前記記憶ブロックの一つを
指定する物理アドレスデータを算出するブロック選択部
と、 前記データ記憶部から、データが記録されていない未使
用記憶ブロックの一つを探索し選択する未使用ブロック
探索部と、 前記記憶ブロックの消去初期化を管理する消去管理部と
を有し、 書換の際に、書換データを前記ブロック探索部で選択さ
れた未使用記憶ブロックに書き込むとともに、前記ブロ
ック選択部での選択対象記憶ブロックを前記選択された
未使用記憶ブロックに変更することを特徴とする半導体
記憶装置。
1. A semiconductor memory device using a non-volatile memory element having a limited number of times of rewriting, wherein at least one independently writable in a storage area composed of the non-volatile memory element having a limited number of times of rewriting. Data storage unit including at least one independently erasable erase unit block composed of various storage blocks, and block selection for calculating physical address data designating one of the storage blocks from an input logical address A storage unit, an unused block search unit that searches and selects one of the unused storage blocks in which no data is recorded from the data storage unit, and an erase management unit that manages erase initialization of the storage block. Then, at the time of rewriting, the rewriting data is written in the unused storage block selected by the block searching unit and selected by the block selecting unit. The semiconductor memory device characterized by changing the target storage blocks in the unused storage blocks said selected.
【請求項2】記憶ブロック各々に対して、既に使用され
ているか否かを示す情報を格納する使用状況情報領域を
具備し、 前記未使用ブロック探索部が、前記使用状況情報領域を
読み出し、前回に探索指定された未使用記憶ブロックの
次の記憶ブロック以降から、未使用記憶ブロック探索を
行うことを特徴とする請求項1記載の半導体記憶装置。
2. A usage status information area for storing information indicating whether or not it is already used is provided for each storage block, and the unused block search unit reads the usage status information area, 2. The semiconductor memory device according to claim 1, wherein an unused storage block is searched from a storage block subsequent to the unused storage block designated by the search.
【請求項3】前記データ記憶部を消去初期化する際に、
未使用記憶ブロックのアドレス情報のリストを作成し、
格納するアドレス情報領域を具備し、 前記未使用ブロック探索部が、前回に探索指定された未
使用記憶ブロックの次に登録されている未使用記憶ブロ
ックを前記アドレス情報領域から読み出し、使用すべき
未使用記憶ブロックを特定することを特徴とする請求項
1記載の半導体記憶装置。
3. When erasing and initializing the data storage unit,
Create a list of address information of unused storage blocks,
The unused block search unit has an address information area for storing, and the unused block search unit reads out an unused storage block registered next to the unused storage block previously searched and specified from the address information area, and The semiconductor memory device according to claim 1, wherein a used memory block is specified.
【請求項4】前記データ記憶部を消去初期化する際に、
未使用記憶ブロック各々に対して、次に使用すべき未使
用記憶ブロックを指し示す接続情報を作成し、格納する
接続情報領域を具備し、 前記未使用ブロック探索部が、前回に探索指定された未
使用記憶ブロックに対応する接続情報を前記接続情報領
域から読み取り、使用すべき未使用記憶ブロックを特定
することを特徴とする請求項1記載の半導体記憶装置。
4. When erasing and initializing the data storage unit,
For each unused storage block, a connection information area for creating and storing connection information pointing to an unused storage block to be used next is provided, and the unused block search unit is provided with the previously specified unspecified 2. The semiconductor memory device according to claim 1, wherein connection information corresponding to a used storage block is read from the connection information area and an unused storage block to be used is specified.
【請求項5】前記消去管理部において、前記未使用ブロ
ック探索部が未使用記憶ブロックを発見できなかった場
合に、全記憶ブロックに対して、有効データを待避した
後、消去し、前記有効データを書き戻すことで、未使用
記憶ブロックを確保することを特徴とする請求項1記載
の半導体記憶装置。
5. The erasure management unit, when the unused block search unit cannot find an unused storage block, saves valid data for all storage blocks and then erases the effective data. 2. The semiconductor memory device according to claim 1, wherein an unused memory block is secured by rewriting.
【請求項6】前記データ記憶部が、少なくとも1つの記
憶ブロックからなる複数の消去単位ブロックに分割さ
れ、 前記消去管理部において、前記消去単位ブロックを順次
選択する消去ブロック選択部を具備し、 前記未使用ブロック探索部が未使用記憶ブロックを発見
できなかった場合に、 前記消去ブロック選択部で選択された消去単位ブロック
に対して、有効データを待避した後、消去し、前記有効
データを書き戻すことで、未使用記憶ブロックを確保す
ることを特徴とする請求項1記載の半導体記憶装置。
6. The data storage unit is divided into a plurality of erase unit blocks including at least one storage block, and the erase management unit includes an erase block selection unit that sequentially selects the erase unit blocks, When the unused block search unit cannot find an unused storage block, the valid data is saved to the erase unit block selected by the erase block selection unit, then erased, and the valid data is written back. The semiconductor memory device according to claim 1, wherein an unused memory block is secured thereby.
【請求項7】書換開始時に、未使用ブロック探索部を動
作させ、使用すべき未使用記憶ブロックを確保すること
を特徴とする請求項1記載の半導体記憶装置。
7. The semiconductor memory device according to claim 1, wherein an unused block search unit is operated at the start of rewriting to secure an unused memory block to be used.
【請求項8】書換終了時に、未使用ブロック探索部を動
作させ、次回書換時に使用すべき未使用記憶ブロックを
確保することを特徴とする請求項1記載の半導体記憶装
置。
8. The semiconductor memory device according to claim 1, wherein an unused block search unit is operated at the end of rewriting to secure an unused storage block to be used at the next rewriting.
【請求項9】予め設定した記憶ブロック数を上限とした
複数記憶ブロックの書換を可能とし、確保した未使用ブ
ロック数が、前記予め設定した記憶ブロック数を下回っ
た際に、未使用ブロック探索部を動作させ、未使用記憶
ブロックを少なくとも前記予め設定した記憶ブロック数
だけ確保することを特徴とする請求項1記載の半導体記
憶装置。
9. An unused block search unit that enables rewriting of a plurality of storage blocks with a preset number of storage blocks as an upper limit, and when the number of reserved unused blocks falls below the preset number of storage blocks. 2. The semiconductor memory device according to claim 1, wherein the semiconductor memory device is operated to secure at least an unused memory block by the preset number of memory blocks.
JP23273994A 1994-09-28 1994-09-28 Semiconductor storage device Pending JPH0896588A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23273994A JPH0896588A (en) 1994-09-28 1994-09-28 Semiconductor storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23273994A JPH0896588A (en) 1994-09-28 1994-09-28 Semiconductor storage device

Publications (1)

Publication Number Publication Date
JPH0896588A true JPH0896588A (en) 1996-04-12

Family

ID=16944016

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23273994A Pending JPH0896588A (en) 1994-09-28 1994-09-28 Semiconductor storage device

Country Status (1)

Country Link
JP (1) JPH0896588A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7093063B2 (en) 2002-12-17 2006-08-15 Oki Electric Industry Co., Ltd. Data rewriting for flash memory
JP2011129192A (en) * 2009-12-16 2011-06-30 Samsung Electronics Co Ltd Semiconductor memory device
JPWO2013140492A1 (en) * 2012-03-19 2015-08-03 富士通株式会社 Data access method, program, and data access apparatus

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05151097A (en) * 1991-11-28 1993-06-18 Fujitsu Ltd Data control system for rewriting frequency limited type memory
JPH05282889A (en) * 1992-03-31 1993-10-29 Toshiba Corp Nonvolatile semiconductor memory

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05151097A (en) * 1991-11-28 1993-06-18 Fujitsu Ltd Data control system for rewriting frequency limited type memory
JPH05282889A (en) * 1992-03-31 1993-10-29 Toshiba Corp Nonvolatile semiconductor memory

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7093063B2 (en) 2002-12-17 2006-08-15 Oki Electric Industry Co., Ltd. Data rewriting for flash memory
US7526601B2 (en) 2002-12-17 2009-04-28 Oki Semiconductor Co., Ltd. Data rewriting method for flash memory using partial erases
JP2011129192A (en) * 2009-12-16 2011-06-30 Samsung Electronics Co Ltd Semiconductor memory device
JPWO2013140492A1 (en) * 2012-03-19 2015-08-03 富士通株式会社 Data access method, program, and data access apparatus
US9582214B2 (en) 2012-03-19 2017-02-28 Fujitsu Limited Data access method and data access apparatus for managing initialization of storage areas

Similar Documents

Publication Publication Date Title
US6374324B2 (en) Flash memory array access method and device
US7783851B2 (en) Methods of reusing log blocks in non-volatile memories and related non-volatile memory devices
US5802551A (en) Method and apparatus for controlling the writing and erasing of information in a memory device
US5479638A (en) Flash memory mass storage architecture incorporation wear leveling technique
EP1729304B1 (en) Space management for managing high capacity nonvolatile memory
EP1739683B1 (en) Space management for managing high capacity nonvolatile memory
US5388083A (en) Flash memory mass storage architecture
JP4772214B2 (en) Nonvolatile memory device and rewrite control method thereof
US7702844B2 (en) Address mapping method and mapping information managing method for flash memory, and flash memory using the same
US5809558A (en) Method and data storage system for storing data in blocks without file reallocation before erasure
US5860082A (en) Method and apparatus for allocating storage in a flash memory
US7882300B2 (en) Apparatus and method for managing nonvolatile memory
US6865658B2 (en) Nonvolatile data management system using data segments and link information
US20010054129A1 (en) Method, system and computer program
KR20010042905A (en) Dynamic allocation for efficient management of variable sized data within a nonvolatile memory
US20050216687A1 (en) Data managing method and data access system for storing all management data in management bank of non-volatile memory
KR20050067203A (en) Maintaining an average erase count in a non-volatile storage system
US8745312B2 (en) Storage device and method of mapping a nonvolatile memory based on a map history
KR100914646B1 (en) Management Scheme for Flash Memory with the Multi-Plane Architecture
US20070005929A1 (en) Method, system, and article of manufacture for sector mapping in a flash device
JPH0896588A (en) Semiconductor storage device
JPH08315596A (en) Semiconductor memory
JP3573706B2 (en) Method for writing / erasing storage device
JPH0764831A (en) Data storage device
JPH0896589A (en) Semiconductor storage device

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19970311