JPH0896588A - 半導体記憶装置 - Google Patents
半導体記憶装置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
Links
- 239000004065 semiconductor Substances 0.000 title claims abstract description 22
- 238000013500 data storage Methods 0.000 claims abstract description 24
- 238000007726 management method Methods 0.000 claims description 12
- 238000000034 method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000007796 conventional method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Read Only Memory (AREA)
Abstract
(57)【要約】
【目的】 書換回数制限がある不揮発性メモリ素子を用
いた半導体記憶装置の装置寿命を延長する。 【構成】 データ記憶領域11を、独立に書換可能な複
数の記憶ブロックに分け、書換は、未使用記憶ブロック
に書換後データを書き込み、該当論理アドレスに対応す
るアクセス対象ブロックを変更することでおこなう。未
使用ブロック探索部14は、使用状況情報、消去初期化
時に設定した未使用ブロックリスト、同様に消去時に設
定した未使用ブロックチェーンを基に使用すべき未使用
ブロックを特定する。未使用ブロック探索部で未使用ブ
ロックが発見できない場合に、消去管理部15は、有効
データの待避及び書き戻しを含む物理的消去初期化を行
って、未使用ブロックを確保する。
いた半導体記憶装置の装置寿命を延長する。 【構成】 データ記憶領域11を、独立に書換可能な複
数の記憶ブロックに分け、書換は、未使用記憶ブロック
に書換後データを書き込み、該当論理アドレスに対応す
るアクセス対象ブロックを変更することでおこなう。未
使用ブロック探索部14は、使用状況情報、消去初期化
時に設定した未使用ブロックリスト、同様に消去時に設
定した未使用ブロックチェーンを基に使用すべき未使用
ブロックを特定する。未使用ブロック探索部で未使用ブ
ロックが発見できない場合に、消去管理部15は、有効
データの待避及び書き戻しを含む物理的消去初期化を行
って、未使用ブロックを確保する。
Description
【0001】
【産業上の利用分野】本発明は、書換回数に制限のある
不揮発性メモリ素子を用いた半導体記憶装置に関する。
不揮発性メモリ素子を用いた半導体記憶装置に関する。
【0002】
【従来の技術】近年、情報機器の外部記憶装置として、
フラッシュEEPROM等の不揮発性半導体メモリ素子
を用いた記憶装置が注目されている。特に、携帯型情報
機器に対しては、耐衝撃性が高く、小型で消費電力が低
いという利点から、不揮発性メモリカードとして、また
は、HDD代替製品として期待されている。
フラッシュEEPROM等の不揮発性半導体メモリ素子
を用いた記憶装置が注目されている。特に、携帯型情報
機器に対しては、耐衝撃性が高く、小型で消費電力が低
いという利点から、不揮発性メモリカードとして、また
は、HDD代替製品として期待されている。
【0003】一般に、EEPROMでは、書換にあたっ
てブロック一括消去が必要である。したがって、書換
は、当該ブロックのデータを読み込み、当該ブロックを
消去し、データの必要箇所を修正して書き戻すという手
順を踏むことになる。
てブロック一括消去が必要である。したがって、書換
は、当該ブロックのデータを読み込み、当該ブロックを
消去し、データの必要箇所を修正して書き戻すという手
順を踏むことになる。
【0004】この書換動作にともなって、EEPROM
には、記録消去特性に劣化が生ずるという欠点があっ
て、書換回数が制限されている。ところで、情報装置の
外部記憶装置においては、一部領域に書換が集中して頻
繁に生ずることが有り得るため、このような場合には、
装置寿命が素子の書換回数制限によって規定され短くな
ってしまうという問題があった。この問題に対して、E
EPROMの書換回数制限をシステム的に回避・(中
点)緩和し、装置寿命を疑似的に延長する手法が、従来
から多く検討されてきた。
には、記録消去特性に劣化が生ずるという欠点があっ
て、書換回数が制限されている。ところで、情報装置の
外部記憶装置においては、一部領域に書換が集中して頻
繁に生ずることが有り得るため、このような場合には、
装置寿命が素子の書換回数制限によって規定され短くな
ってしまうという問題があった。この問題に対して、E
EPROMの書換回数制限をシステム的に回避・(中
点)緩和し、装置寿命を疑似的に延長する手法が、従来
から多く検討されてきた。
【0005】そのうちの第1のものに、揮発性メモリと
組み合わせ、運用時には、この揮発メモリを使用して電
源OFFなどの時にのみ揮発性メモリから不揮発性メモ
リにバックアップ複写するという手法がある。
組み合わせ、運用時には、この揮発メモリを使用して電
源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に開示されているように、独立に書換可能な複数の
記憶ブロックを一つのデータに割り当て、書換を分散さ
せることで装置寿命の延長を図る手法もある。
167498、特開昭63−181190、特開平01
−277397、特開平04−030399に開示され
ているように、書換単位ブロックに比較してかなり小さ
な量のデータを繰り返し書き込むことを想定して、書換
単位ブロックを複数領域に分割して順次書き込み、消去
書換回数を減ずる手法、さらに第3の従来例として、特
開平02−023598、特開平02−053299、
特開平02−206097、特開平02−31089
6、特開平03−142794、特開平04−3012
97に開示されているように、独立に書換可能な複数の
記憶ブロックを一つのデータに割り当て、書換を分散さ
せることで装置寿命の延長を図る手法もある。
【0007】
【発明が解決しようとする課題】しかしながら、上述の
第1の従来技術では、揮発性メモリと不揮発性メモリの
2重構造となるので、構造が複雑でコスト的にも不利で
ある。
第1の従来技術では、揮発性メモリと不揮発性メモリの
2重構造となるので、構造が複雑でコスト的にも不利で
ある。
【0008】また、第2,第3の従来技術では、見かけ
上の記憶容量が1/領域数、または1/ブロック数とな
って、全ての領域にわたって冗長性が高いので書換頻度
の低いブロックに対しては無駄が生じるという問題点が
ある。
上の記憶容量が1/領域数、または1/ブロック数とな
って、全ての領域にわたって冗長性が高いので書換頻度
の低いブロックに対しては無駄が生じるという問題点が
ある。
【0009】
【課題を解決するための手段】本発明の装置は、書換回
数制限がある不揮発性メモリ素子を用いた半導体記憶装
置であって、書換回数制限のある不揮発性メモリ素子で
構成される記憶領域上に、少なくとも1つの独立に書込
可能な記憶ブロックから構成される、独立に消去可能な
消去単位ブロックを少なくとも1つ具備するデータ記憶
部と、入力された論理アドレスから前記記憶ブロックの
一つを指定する物理アドレスデータを算出するブロック
選択部と、前記データ記憶部から、データが記録されて
いない未使用記憶ブロックの一つを探索し選択する未使
用ブロック探索部と、前記記憶ブロックの消去初期化を
管理する消去管理部とを有し、書換の際に、書換データ
を前記ブロック探索部で選択された未使用記憶ブロック
に書き込むとともに、前記ブロック選択部での選択対象
記憶ブロックを前記選択された未使用記憶ブロックに変
更することを特徴とする。
数制限がある不揮発性メモリ素子を用いた半導体記憶装
置であって、書換回数制限のある不揮発性メモリ素子で
構成される記憶領域上に、少なくとも1つの独立に書込
可能な記憶ブロックから構成される、独立に消去可能な
消去単位ブロックを少なくとも1つ具備するデータ記憶
部と、入力された論理アドレスから前記記憶ブロックの
一つを指定する物理アドレスデータを算出するブロック
選択部と、前記データ記憶部から、データが記録されて
いない未使用記憶ブロックの一つを探索し選択する未使
用ブロック探索部と、前記記憶ブロックの消去初期化を
管理する消去管理部とを有し、書換の際に、書換データ
を前記ブロック探索部で選択された未使用記憶ブロック
に書き込むとともに、前記ブロック選択部での選択対象
記憶ブロックを前記選択された未使用記憶ブロックに変
更することを特徴とする。
【0010】
【実施例】次に、図を用いて本発明にかかる半導体記憶
装置について説明する。
装置について説明する。
【0011】図1は本発明の半導体記憶装置の構成例の
ブロック図を示す。
ブロック図を示す。
【0012】データ記憶部11は、書換回数制限のある
記憶素子で構成され、独立に消去が可能な複数の消去単
位ブロックに分割されている。各々の消去単位ブロック
は、複数の記憶ブロックと管理情報領域を含んでいる。
記憶素子で構成され、独立に消去が可能な複数の消去単
位ブロックに分割されている。各々の消去単位ブロック
は、複数の記憶ブロックと管理情報領域を含んでいる。
【0013】データ制御部12は、外部とのデータ入出
力、データバッファ機能、データ記憶部11に対するR
/W制御、ブロック内アドレス制御等を管理している。
力、データバッファ機能、データ記憶部11に対するR
/W制御、ブロック内アドレス制御等を管理している。
【0014】ブロック選択部13は、データ制御部12
から供給される論理アドレスデータを基にデータ記憶部
11から単一の記憶ブロックを選択する。選択は、アド
レスデータに対する物理的ブロック番号で構成されたア
ドレス変換テーブルを参照することで実現することがで
きる。そして、読出/書込時のデータ記憶部11に対す
るアドレス指定は、ブロック選択部13がデータ制御部
12から供給される論理アドレスデータを基に選択す
る、読出/書込対象の記憶ブロックの物理番号をブロッ
ク内アドレスと合わせ、データ制御部12がデータ記憶
部11に物理アドレスとして出力することによって行わ
れる。
から供給される論理アドレスデータを基にデータ記憶部
11から単一の記憶ブロックを選択する。選択は、アド
レスデータに対する物理的ブロック番号で構成されたア
ドレス変換テーブルを参照することで実現することがで
きる。そして、読出/書込時のデータ記憶部11に対す
るアドレス指定は、ブロック選択部13がデータ制御部
12から供給される論理アドレスデータを基に選択す
る、読出/書込対象の記憶ブロックの物理番号をブロッ
ク内アドレスと合わせ、データ制御部12がデータ記憶
部11に物理アドレスとして出力することによって行わ
れる。
【0015】未使用ブロック探索部14は、データ記憶
部11から、データが記録されていない未使用記憶ブロ
ックの一つを探索し選択する。
部11から、データが記録されていない未使用記憶ブロ
ックの一つを探索し選択する。
【0016】消去管理部15は、データ記憶部11から
有効データを待避した後、消去し、有効データをデータ
記憶部11に書き戻すことで、データ記憶部11の記憶
領域の消去初期化を行う。
有効データを待避した後、消去し、有効データをデータ
記憶部11に書き戻すことで、データ記憶部11の記憶
領域の消去初期化を行う。
【0017】データ記憶部11の記憶ブロックを書き換
える際には、未使用ブロック探索部14が未使用記憶ブ
ロックの一つを選択し、選択された未使用記憶ブロック
に書換後データを書き込むとともに、ブロック選択部1
3におけるアドレス変換テーブルを、新たにデータを書
き込んだ記憶ブロックが論理アドレスデータに対応して
選択されるよう変更する。未使用ブロック探索部14で
未使用記憶ブロックが発見できなかった場合には、消去
管理部15により、消去初期化を行って未使用記憶ブロ
ックを確保し、再度、未使用ブロック探索部14を動作
させることにより、書換に用いる未使用記憶ブロックを
特定する。
える際には、未使用ブロック探索部14が未使用記憶ブ
ロックの一つを選択し、選択された未使用記憶ブロック
に書換後データを書き込むとともに、ブロック選択部1
3におけるアドレス変換テーブルを、新たにデータを書
き込んだ記憶ブロックが論理アドレスデータに対応して
選択されるよう変更する。未使用ブロック探索部14で
未使用記憶ブロックが発見できなかった場合には、消去
管理部15により、消去初期化を行って未使用記憶ブロ
ックを確保し、再度、未使用ブロック探索部14を動作
させることにより、書換に用いる未使用記憶ブロックを
特定する。
【0018】次に、使用すべき未使用記憶ブロックを特
定するための3つの実施例について述べる。
定するための3つの実施例について述べる。
【0019】第1の実施例では、未使用記憶ブロックの
探索を、使用状況情報領域を読み出し、判定することで
行う。
探索を、使用状況情報領域を読み出し、判定することで
行う。
【0020】使用状況情報は、記憶ブロック各々の状況
に対応するフラグ群から構成できる。登録されている使
用状況情報は、記憶ブロックの各々の状況を常に反映し
ている必要がある。すなわち、使用されているか否かを
示す情報に対しては、記憶ブロックに書き込みを行う際
には、対応する使用済であることを示すフラグをセット
し、記憶ブロックの消去初期化を行う際には、対応する
フラグをクリアする必要がある。
に対応するフラグ群から構成できる。登録されている使
用状況情報は、記憶ブロックの各々の状況を常に反映し
ている必要がある。すなわち、使用されているか否かを
示す情報に対しては、記憶ブロックに書き込みを行う際
には、対応する使用済であることを示すフラグをセット
し、記憶ブロックの消去初期化を行う際には、対応する
フラグをクリアする必要がある。
【0021】使用状況情報は、対応する記憶ブロックと
同時に消去初期化すればよいので、書換回数制限のある
記憶素子で構成されたデータ記憶部11に格納すること
もできる。全記憶ブロックを一括して消去する手法を採
る場合には、まとめて格納することができるが、消去単
位ブロック毎に消去初期化を行う場合には、少なくとも
消去単位ブロック毎に、各消去単位ブロックの一部領域
に格納するか、または、対応する消去単位ブロックの消
去初期化に連動して独立に消去初期化可能な領域に格納
し、分散させる必要がある。いづれの場合でも、さらに
分散して、各記憶ブロック毎に格納することもできる。
同時に消去初期化すればよいので、書換回数制限のある
記憶素子で構成されたデータ記憶部11に格納すること
もできる。全記憶ブロックを一括して消去する手法を採
る場合には、まとめて格納することができるが、消去単
位ブロック毎に消去初期化を行う場合には、少なくとも
消去単位ブロック毎に、各消去単位ブロックの一部領域
に格納するか、または、対応する消去単位ブロックの消
去初期化に連動して独立に消去初期化可能な領域に格納
し、分散させる必要がある。いづれの場合でも、さらに
分散して、各記憶ブロック毎に格納することもできる。
【0022】図2は、上述の第1の実施例における未使
用ブロック探索部14のブロック図である。
用ブロック探索部14のブロック図である。
【0023】本使用ブロック探索部14は、前回に探索
指定された記憶ブロックの物理ブロック番号を格納する
記憶回路21と、判定すべき記憶ブロックの物理ブロッ
ク番号を出力し、使用状況情報領域の対応する部分を読
み出す使用状況読出器22、読み出された使用状況情報
を判定する判定器23を具備することで構成できる。
指定された記憶ブロックの物理ブロック番号を格納する
記憶回路21と、判定すべき記憶ブロックの物理ブロッ
ク番号を出力し、使用状況情報領域の対応する部分を読
み出す使用状況読出器22、読み出された使用状況情報
を判定する判定器23を具備することで構成できる。
【0024】使用状況読出器22の出力ブロック番号
は、探索開始時に、記憶回路21が示す記憶ブロック番
号に1を加えた番号に初期化される。以後、この出力ブ
ロック番号は未使用記憶ブロックが検出されるまで、ま
たは、最終記憶ブロックに到達するまでインクリメント
される。このような構成の採用により、前回に探索指定
された記憶ブロックの次の記憶ブロックから、未使用で
あるか否かの判定を開始することにより、探索時間の低
減を図ることができる。
は、探索開始時に、記憶回路21が示す記憶ブロック番
号に1を加えた番号に初期化される。以後、この出力ブ
ロック番号は未使用記憶ブロックが検出されるまで、ま
たは、最終記憶ブロックに到達するまでインクリメント
される。このような構成の採用により、前回に探索指定
された記憶ブロックの次の記憶ブロックから、未使用で
あるか否かの判定を開始することにより、探索時間の低
減を図ることができる。
【0025】判定器23は、読み出された使用状況情報
を記憶ブロック毎に判定する。未使用記憶ブロックを検
出した場合には、該当する記憶ブロック番号を、データ
制御器12に通知するとともに、記憶回路21に格納す
る。最終記憶ブロックの検査が終了した時点で、未使用
記憶ブロックが検出できなかった場合には、未使用記憶
ブロックが検出できなかったことをデータ制御部12に
通知する。
を記憶ブロック毎に判定する。未使用記憶ブロックを検
出した場合には、該当する記憶ブロック番号を、データ
制御器12に通知するとともに、記憶回路21に格納す
る。最終記憶ブロックの検査が終了した時点で、未使用
記憶ブロックが検出できなかった場合には、未使用記憶
ブロックが検出できなかったことをデータ制御部12に
通知する。
【0026】未使用記憶ブロックが検出できなかった場
合には、図1の消去管理部15は、消去単位ブロックを
選択し、消去初期化を行って未使用記憶ブロックを確保
する。その際、使用状況情報等の管理情報をも初期化
し、記憶回路21に次回探索を開始すべき記憶ブロック
番号から1を引いた番号を格納する。
合には、図1の消去管理部15は、消去単位ブロックを
選択し、消去初期化を行って未使用記憶ブロックを確保
する。その際、使用状況情報等の管理情報をも初期化
し、記憶回路21に次回探索を開始すべき記憶ブロック
番号から1を引いた番号を格納する。
【0027】次に、第2の実施例では、未使用記憶ブロ
ックの探索を、データ記憶部11にを消去初期化する際
に、未使用記憶ブロックのアドレス情報のリストを作成
し、アドレス情報領域に格納しておき、未使用記憶ブロ
ックアドレスを順次アドレス情報領域から読み出すこと
で行う。
ックの探索を、データ記憶部11にを消去初期化する際
に、未使用記憶ブロックのアドレス情報のリストを作成
し、アドレス情報領域に格納しておき、未使用記憶ブロ
ックアドレスを順次アドレス情報領域から読み出すこと
で行う。
【0028】アドレス情報は、記憶ブロックの消去初期
化にともなって、新たに確保された未使用記憶ブロック
番号をリストに加えていくことになる。
化にともなって、新たに確保された未使用記憶ブロック
番号をリストに加えていくことになる。
【0029】図3は、このような第2の実施例における
未使用ブロック探索部14の構成例のブロック図を示
す。
未使用ブロック探索部14の構成例のブロック図を示
す。
【0030】本未使用ブロック探索部14は、アドレス
情報領域上のアドレス情報リストにおける前回指定位置
を記憶する記憶回路31と、リストの最後尾位置を記憶
する記憶回路32と、記憶回路31と32の内容を比較
する比較器33と、記憶回路31に記憶された位置の次
の位置に格納された未使用記憶ブロック番号を読み出す
アドレス読出器34を具備することで構成できる。
情報領域上のアドレス情報リストにおける前回指定位置
を記憶する記憶回路31と、リストの最後尾位置を記憶
する記憶回路32と、記憶回路31と32の内容を比較
する比較器33と、記憶回路31に記憶された位置の次
の位置に格納された未使用記憶ブロック番号を読み出す
アドレス読出器34を具備することで構成できる。
【0031】比較器33は、記憶回路31と32の内容
が一致した場合には、未使用記憶ブロックが存在しない
ことをデータ制御部12に通知する。一致しない場合に
は、アドレス読出器34を動作させ、未使用記憶ブロッ
ク番号をデータ制御部12に通知させる。
が一致した場合には、未使用記憶ブロックが存在しない
ことをデータ制御部12に通知する。一致しない場合に
は、アドレス読出器34を動作させ、未使用記憶ブロッ
ク番号をデータ制御部12に通知させる。
【0032】未使用記憶ブロックが検出できなかった場
合に、消去管理部15は、消去単位ブロックを選択し、
消去初期化を行って未使用記憶ブロックを確保する。そ
の際、アドレス情報リストに確保した未使用記憶ブロッ
クの番号を追加するとともに、記憶回路32のリスト最
後尾位置データを更新する。
合に、消去管理部15は、消去単位ブロックを選択し、
消去初期化を行って未使用記憶ブロックを確保する。そ
の際、アドレス情報リストに確保した未使用記憶ブロッ
クの番号を追加するとともに、記憶回路32のリスト最
後尾位置データを更新する。
【0033】次に、第3の実施例では、未使用記憶ブロ
ックの探索を、データ記憶部11を消去初期化する際
に、未使用記憶ブロック各々に対して、次に使用すべき
未使用記憶ブロックを指し示す接続情報を作成し、接続
情報領域に格納しておき、未使用記憶ブロックアドレス
を順次接続情報領域から読み出すことで行う。
ックの探索を、データ記憶部11を消去初期化する際
に、未使用記憶ブロック各々に対して、次に使用すべき
未使用記憶ブロックを指し示す接続情報を作成し、接続
情報領域に格納しておき、未使用記憶ブロックアドレス
を順次接続情報領域から読み出すことで行う。
【0034】接続情報は、使用状況情報と同様に、デー
タ記憶部11におくこともできる。対応する記憶ブロッ
クと同時に消去初期化する必要があるので、全記憶ブロ
ックを一括して消去する場合には、まとめて格納するこ
とができるが、消去単位ブロック毎に消去初期化を行う
場合には、少なくとも消去単位ブロック毎に、各消去単
位ブロックの一部領域に格納するか、または、対応する
消去単位ブロックの消去初期化に連動して独立に消去初
期化可能な領域に格納し、分散させる必要がある。いづ
れの場合でも、さらに分散して、各記憶ブロック毎に格
納することもできる。
タ記憶部11におくこともできる。対応する記憶ブロッ
クと同時に消去初期化する必要があるので、全記憶ブロ
ックを一括して消去する場合には、まとめて格納するこ
とができるが、消去単位ブロック毎に消去初期化を行う
場合には、少なくとも消去単位ブロック毎に、各消去単
位ブロックの一部領域に格納するか、または、対応する
消去単位ブロックの消去初期化に連動して独立に消去初
期化可能な領域に格納し、分散させる必要がある。いづ
れの場合でも、さらに分散して、各記憶ブロック毎に格
納することもできる。
【0035】また、未使用記憶ブロックの接続チェーン
は、全記憶ブロックを一括して消去する場合は一つにつ
ながり、消去単位ブロック毎に消去初期化を行う場合に
は、消去単位ブロック毎になる。未使用記憶ブロックチ
ェーンの最後尾の未使用記憶ブロックに対しては、チェ
ーンの最後尾であることを示す情報を接続情報領域に格
納しておく。
は、全記憶ブロックを一括して消去する場合は一つにつ
ながり、消去単位ブロック毎に消去初期化を行う場合に
は、消去単位ブロック毎になる。未使用記憶ブロックチ
ェーンの最後尾の未使用記憶ブロックに対しては、チェ
ーンの最後尾であることを示す情報を接続情報領域に格
納しておく。
【0036】図4は、上述の第3の実施例における未使
用ブロック探索部14の構成例のブロック図を示す。
用ブロック探索部14の構成例のブロック図を示す。
【0037】本未使用ブロック探索部14は、前回指定
された未使用記憶ブロック番号を記憶する記憶回路41
と、記憶回路41に記憶された記憶ブロック番号に対応
する接続情報をデータを読み出す接続情報読出器42
と、読み出された接続情報を判定する判定器43を具備
することで構成できる。
された未使用記憶ブロック番号を記憶する記憶回路41
と、記憶回路41に記憶された記憶ブロック番号に対応
する接続情報をデータを読み出す接続情報読出器42
と、読み出された接続情報を判定する判定器43を具備
することで構成できる。
【0038】判定器43は、読み出された接続情報が、
未使用記憶ブロックチェーンの最後尾であることを示し
ている場合には、次回探索においては、FIFOメモリ
となっている記憶回路44から未使用記憶ブロック番号
を読み取り出力する。記憶回路44が空である場合に
は、未使用記憶ブロックを検出できなかったことをデー
タ制御部12に通知し、未使用記憶ブロック番号を示し
ている場合には、該当未使用記憶ブロック番号をデータ
制御部12に通知する。
未使用記憶ブロックチェーンの最後尾であることを示し
ている場合には、次回探索においては、FIFOメモリ
となっている記憶回路44から未使用記憶ブロック番号
を読み取り出力する。記憶回路44が空である場合に
は、未使用記憶ブロックを検出できなかったことをデー
タ制御部12に通知し、未使用記憶ブロック番号を示し
ている場合には、該当未使用記憶ブロック番号をデータ
制御部12に通知する。
【0039】未使用記憶ブロックが検出できなかった場
合に、消去管理部15は、消去単位ブロックを選択し、
消去初期化を行って未使用記憶ブロックを確保する。そ
の際、接続情報を設定して未使用記憶ブロックチェーン
の構築を行うとともに、未使用記憶ブロックチェーンの
先頭の記憶ブロックの番号を記憶回路44に登録する。
合に、消去管理部15は、消去単位ブロックを選択し、
消去初期化を行って未使用記憶ブロックを確保する。そ
の際、接続情報を設定して未使用記憶ブロックチェーン
の構築を行うとともに、未使用記憶ブロックチェーンの
先頭の記憶ブロックの番号を記憶回路44に登録する。
【0040】次に、未使用記憶ブロックを確保するため
に行う記憶ブロックの消去初期化の範囲設定に係る2種
類の実施例について述べる。
に行う記憶ブロックの消去初期化の範囲設定に係る2種
類の実施例について述べる。
【0041】そのうちの第1のもの(本発明の第4の実
施例)は、記憶ブロックの消去初期化を全記憶ブロック
一括して行う。
施例)は、記憶ブロックの消去初期化を全記憶ブロック
一括して行う。
【0042】この場合には、データ記憶部11を一つの
領域として使用することができるため、各種処理が単純
化される。また、記憶素子の消去動作を平均して行うこ
とが可能となる。現実には、有効データを待避させる一
時メモリ領域の大きさが限られていることや記憶素子自
体の物理的構成に依存して、消去単位ブロック毎に行う
ことも有り得る。
領域として使用することができるため、各種処理が単純
化される。また、記憶素子の消去動作を平均して行うこ
とが可能となる。現実には、有効データを待避させる一
時メモリ領域の大きさが限られていることや記憶素子自
体の物理的構成に依存して、消去単位ブロック毎に行う
ことも有り得る。
【0043】また、第2のもの(本発明の第5の実施
例)は、記憶ブロックの消去初期化を複数の消去単位ブ
ロックを一時に1ブロックずつ順次に行う。
例)は、記憶ブロックの消去初期化を複数の消去単位ブ
ロックを一時に1ブロックずつ順次に行う。
【0044】この場合には、消去対象となる消去単位ブ
ロックを選択する消去ブロック選択部が必要となる。消
去ブロック選択部は、例えば、消去動作毎にインクリメ
ント動作を行い、最終消去単位ブロックを指し示した後
は最初の消去単位ブロックを指し示すよう初期化される
カウンタで構成することができる。このように消去単位
ブロックを順次選択することで、記憶素子の消去動作を
平均して行うことが可能となる。また、消去初期化動作
を分割して行うことにより、消去初期化待ち時間を分散
させることができる。
ロックを選択する消去ブロック選択部が必要となる。消
去ブロック選択部は、例えば、消去動作毎にインクリメ
ント動作を行い、最終消去単位ブロックを指し示した後
は最初の消去単位ブロックを指し示すよう初期化される
カウンタで構成することができる。このように消去単位
ブロックを順次選択することで、記憶素子の消去動作を
平均して行うことが可能となる。また、消去初期化動作
を分割して行うことにより、消去初期化待ち時間を分散
させることができる。
【0045】上述の第4の実施例においても、第5の実
施例においても、消去単位ブロックを消去初期化しても
未使用記憶ブロックが得られない場合には、該当消去単
位ブロックを消去しないように、処理を設定することも
できる。例えば、消去単位ブロックに、消去初期化を行
えば未使用記憶ブロックが確保できるか否かを示すフラ
グ情報領域を設け、書換を行う際に、アクセス対象から
はずれる古いデータが格納されている記憶ブロックが含
まれている。消去単位ブロックの情報領域のフラグを立
てるものとする。この場合には、消去の際に、該当消去
単位ブロックのフラグ情報領域を参照することで、消去
すべきか否かを判定することができる。
施例においても、消去単位ブロックを消去初期化しても
未使用記憶ブロックが得られない場合には、該当消去単
位ブロックを消去しないように、処理を設定することも
できる。例えば、消去単位ブロックに、消去初期化を行
えば未使用記憶ブロックが確保できるか否かを示すフラ
グ情報領域を設け、書換を行う際に、アクセス対象から
はずれる古いデータが格納されている記憶ブロックが含
まれている。消去単位ブロックの情報領域のフラグを立
てるものとする。この場合には、消去の際に、該当消去
単位ブロックのフラグ情報領域を参照することで、消去
すべきか否かを判定することができる。
【0046】また、消去に先立って、有効データを一時
メモリに待避させなければならない。記憶ブロックが有
効データを含んでいるか否かを判定する手法としては、
例えば、アドレス変換テーブルを用いることが考えられ
る。すなわち、アドレス変換テーブルに物理記憶ブロッ
ク番号が登録されている記憶ブロックが有効データを含
んでいることを利用して判定を行うことができる。ただ
し、この手法では対象記憶ブロックが有効データを含ん
でいるか否かを判定するため、アドレス変換テーブル全
体をサーチ比較する必要がある。
メモリに待避させなければならない。記憶ブロックが有
効データを含んでいるか否かを判定する手法としては、
例えば、アドレス変換テーブルを用いることが考えられ
る。すなわち、アドレス変換テーブルに物理記憶ブロッ
ク番号が登録されている記憶ブロックが有効データを含
んでいることを利用して判定を行うことができる。ただ
し、この手法では対象記憶ブロックが有効データを含ん
でいるか否かを判定するため、アドレス変換テーブル全
体をサーチ比較する必要がある。
【0047】他の手法としては、各記憶ブロックに対し
て、有効データを含んでいるか否かを示す情報を登録す
る有効性情報領域を設け、前述の第1の実施例における
使用状況情報と組み合わせることで判定を下すことがで
きる。つまり、書換の際に、古いデータを保持しており
有効でないデータをいる場合に、有効性情報領域の対応
する位置にフラグを立てることとすれば、使用状況情報
で使用されていることが示され、かつ、有効性情報でデ
ータが有効でないことが示されていない記憶ブロック
が、有効データを含んでいるものと判定できる。
て、有効データを含んでいるか否かを示す情報を登録す
る有効性情報領域を設け、前述の第1の実施例における
使用状況情報と組み合わせることで判定を下すことがで
きる。つまり、書換の際に、古いデータを保持しており
有効でないデータをいる場合に、有効性情報領域の対応
する位置にフラグを立てることとすれば、使用状況情報
で使用されていることが示され、かつ、有効性情報でデ
ータが有効でないことが示されていない記憶ブロック
が、有効データを含んでいるものと判定できる。
【0048】次に、未使用記憶ブロック確保を開始する
時期に係る3つの実施例について述べる。
時期に係る3つの実施例について述べる。
【0049】そのうちの第1のもの(本発明の第6の実
施例)では、書換の際に使用する未使用記憶ブロックを
書換開始時点で探索する。
施例)では、書換の際に使用する未使用記憶ブロックを
書換開始時点で探索する。
【0050】また、第2のもの(本発明の第7の実施
例)は、書換終了時に、未使用ブロック探索部14を動
作させ、次回書換時に使用すべき未使用ブロックを確保
する構成としている。この結果、次回の書換動作が起こ
るまでに、未使用記憶ブロックを用意しておくことがで
き、書換の際の未使用記憶ブロックを確保するための待
ち時間を見かけ上なくすことができる。特に、記憶ブロ
ックの消去がバックグラウンドで処理される場合には、
効果的であると考えられる。ただし、次回使用する未使
用記憶ブロックの番号を記憶する記憶回路が必要とな
る。
例)は、書換終了時に、未使用ブロック探索部14を動
作させ、次回書換時に使用すべき未使用ブロックを確保
する構成としている。この結果、次回の書換動作が起こ
るまでに、未使用記憶ブロックを用意しておくことがで
き、書換の際の未使用記憶ブロックを確保するための待
ち時間を見かけ上なくすことができる。特に、記憶ブロ
ックの消去がバックグラウンドで処理される場合には、
効果的であると考えられる。ただし、次回使用する未使
用記憶ブロックの番号を記憶する記憶回路が必要とな
る。
【0051】また、第3のもの(本発明の第8の実施
例)は、予め設定した記憶ブロック数を上限とした複数
記憶ブロックの書換を可能とし、確保した未使用ブロッ
クが、予め設定した記憶ブロック数を下回った際に、未
使用ブロック探索部14を動作させる。この結果、予め
設定されたブロック数の書換を連続的に行うことを可能
とし、書換動作における未使用記憶ブロックを確保する
ための待ち時間のさらなる低減を図っている。未使用記
憶ブロックの番号を記憶するFIFOメモリ等が必要で
ある。
例)は、予め設定した記憶ブロック数を上限とした複数
記憶ブロックの書換を可能とし、確保した未使用ブロッ
クが、予め設定した記憶ブロック数を下回った際に、未
使用ブロック探索部14を動作させる。この結果、予め
設定されたブロック数の書換を連続的に行うことを可能
とし、書換動作における未使用記憶ブロックを確保する
ための待ち時間のさらなる低減を図っている。未使用記
憶ブロックの番号を記憶するFIFOメモリ等が必要で
ある。
【0052】さらに、前述の本発明の第2の実施例にお
ける未使用ブロック探索部14と組み合わせて構成する
こともできる。すなわち、未使用記憶ブロックを記憶す
るためにメモリを未使用ブロック探索部14で使用する
アドレス情報リストと兼用し、消去初期化により未使用
記憶ブロックを確保する際に、予め設定したブロック数
に達するまで一つ以上の消去単位ブロックの消去初期化
を行い、アドレス情報リストに登録するよう構成すれば
よい。
ける未使用ブロック探索部14と組み合わせて構成する
こともできる。すなわち、未使用記憶ブロックを記憶す
るためにメモリを未使用ブロック探索部14で使用する
アドレス情報リストと兼用し、消去初期化により未使用
記憶ブロックを確保する際に、予め設定したブロック数
に達するまで一つ以上の消去単位ブロックの消去初期化
を行い、アドレス情報リストに登録するよう構成すれば
よい。
【0053】
【発明の効果】本発明にかかる半導体記憶装置において
は、メモリ素子の物理的消去回数を低減することがで
き、さらに、消去回数を平均化することもできる。した
がって、書換回数に制限のある不揮発性メモリ素子を用
いて構築された半導体記憶装置においても、素子の書換
制限を回避緩和することが可能となり、装置寿命を延長
させることができる。さらに、本発明にかかる半導体記
憶装置は簡便に実現可能である。
は、メモリ素子の物理的消去回数を低減することがで
き、さらに、消去回数を平均化することもできる。した
がって、書換回数に制限のある不揮発性メモリ素子を用
いて構築された半導体記憶装置においても、素子の書換
制限を回避緩和することが可能となり、装置寿命を延長
させることができる。さらに、本発明にかかる半導体記
憶装置は簡便に実現可能である。
【図1】本発明の半導体記憶装置の構成例のブロック図
である。
である。
【図2】本発明の第1の実施例における未使用ブロック
探索部の構成例のブロック図である。
探索部の構成例のブロック図である。
【図3】本発明の第2の実施例における未使用ブロック
探索部の構成例のブロック図である。
探索部の構成例のブロック図である。
【図4】本発明の第3の実施例における未使用ブロック
探索部の構成例のブロック図である。
探索部の構成例のブロック図である。
11 データ記憶部 12 データ制御部 13 ブロック選択部 14 未使用ブロック探索部 15 消去管理部 21 記憶回路 22 使用状況読出器 23 判定器 31 記憶回路 32 記憶回路 33 比較器 34 アドレス読出器 41 記憶回路 42 接続情報読出器 43 判定器 44 記憶回路
Claims (9)
- 【請求項1】書換回数制限がある不揮発性メモリ素子を
用いた半導体記憶装置であって、 書換回数制限のある不揮発性メモリ素子で構成される記
憶領域上に、少なくとも1つの独立に書込可能な記憶ブ
ロックから構成される、独立に消去可能な消去単位ブロ
ックを少なくとも1つ具備するデータ記憶部と、 入力された論理アドレスから前記記憶ブロックの一つを
指定する物理アドレスデータを算出するブロック選択部
と、 前記データ記憶部から、データが記録されていない未使
用記憶ブロックの一つを探索し選択する未使用ブロック
探索部と、 前記記憶ブロックの消去初期化を管理する消去管理部と
を有し、 書換の際に、書換データを前記ブロック探索部で選択さ
れた未使用記憶ブロックに書き込むとともに、前記ブロ
ック選択部での選択対象記憶ブロックを前記選択された
未使用記憶ブロックに変更することを特徴とする半導体
記憶装置。 - 【請求項2】記憶ブロック各々に対して、既に使用され
ているか否かを示す情報を格納する使用状況情報領域を
具備し、 前記未使用ブロック探索部が、前記使用状況情報領域を
読み出し、前回に探索指定された未使用記憶ブロックの
次の記憶ブロック以降から、未使用記憶ブロック探索を
行うことを特徴とする請求項1記載の半導体記憶装置。 - 【請求項3】前記データ記憶部を消去初期化する際に、
未使用記憶ブロックのアドレス情報のリストを作成し、
格納するアドレス情報領域を具備し、 前記未使用ブロック探索部が、前回に探索指定された未
使用記憶ブロックの次に登録されている未使用記憶ブロ
ックを前記アドレス情報領域から読み出し、使用すべき
未使用記憶ブロックを特定することを特徴とする請求項
1記載の半導体記憶装置。 - 【請求項4】前記データ記憶部を消去初期化する際に、
未使用記憶ブロック各々に対して、次に使用すべき未使
用記憶ブロックを指し示す接続情報を作成し、格納する
接続情報領域を具備し、 前記未使用ブロック探索部が、前回に探索指定された未
使用記憶ブロックに対応する接続情報を前記接続情報領
域から読み取り、使用すべき未使用記憶ブロックを特定
することを特徴とする請求項1記載の半導体記憶装置。 - 【請求項5】前記消去管理部において、前記未使用ブロ
ック探索部が未使用記憶ブロックを発見できなかった場
合に、全記憶ブロックに対して、有効データを待避した
後、消去し、前記有効データを書き戻すことで、未使用
記憶ブロックを確保することを特徴とする請求項1記載
の半導体記憶装置。 - 【請求項6】前記データ記憶部が、少なくとも1つの記
憶ブロックからなる複数の消去単位ブロックに分割さ
れ、 前記消去管理部において、前記消去単位ブロックを順次
選択する消去ブロック選択部を具備し、 前記未使用ブロック探索部が未使用記憶ブロックを発見
できなかった場合に、 前記消去ブロック選択部で選択された消去単位ブロック
に対して、有効データを待避した後、消去し、前記有効
データを書き戻すことで、未使用記憶ブロックを確保す
ることを特徴とする請求項1記載の半導体記憶装置。 - 【請求項7】書換開始時に、未使用ブロック探索部を動
作させ、使用すべき未使用記憶ブロックを確保すること
を特徴とする請求項1記載の半導体記憶装置。 - 【請求項8】書換終了時に、未使用ブロック探索部を動
作させ、次回書換時に使用すべき未使用記憶ブロックを
確保することを特徴とする請求項1記載の半導体記憶装
置。 - 【請求項9】予め設定した記憶ブロック数を上限とした
複数記憶ブロックの書換を可能とし、確保した未使用ブ
ロック数が、前記予め設定した記憶ブロック数を下回っ
た際に、未使用ブロック探索部を動作させ、未使用記憶
ブロックを少なくとも前記予め設定した記憶ブロック数
だけ確保することを特徴とする請求項1記載の半導体記
憶装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23273994A JPH0896588A (ja) | 1994-09-28 | 1994-09-28 | 半導体記憶装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23273994A JPH0896588A (ja) | 1994-09-28 | 1994-09-28 | 半導体記憶装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0896588A true JPH0896588A (ja) | 1996-04-12 |
Family
ID=16944016
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP23273994A Pending JPH0896588A (ja) | 1994-09-28 | 1994-09-28 | 半導体記憶装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0896588A (ja) |
Cited By (3)
| 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 (ja) * | 2009-12-16 | 2011-06-30 | Samsung Electronics Co Ltd | 半導体記憶装置 |
| JPWO2013140492A1 (ja) * | 2012-03-19 | 2015-08-03 | 富士通株式会社 | データアクセス方法、プログラムおよびデータアクセス装置 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05151097A (ja) * | 1991-11-28 | 1993-06-18 | Fujitsu Ltd | 書換回数制限型メモリのデータ管理方式 |
| JPH05282889A (ja) * | 1992-03-31 | 1993-10-29 | Toshiba Corp | 不揮発性半導体メモリ装置 |
-
1994
- 1994-09-28 JP JP23273994A patent/JPH0896588A/ja active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05151097A (ja) * | 1991-11-28 | 1993-06-18 | Fujitsu Ltd | 書換回数制限型メモリのデータ管理方式 |
| JPH05282889A (ja) * | 1992-03-31 | 1993-10-29 | Toshiba Corp | 不揮発性半導体メモリ装置 |
Cited By (5)
| 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 (ja) * | 2009-12-16 | 2011-06-30 | Samsung Electronics Co Ltd | 半導体記憶装置 |
| JPWO2013140492A1 (ja) * | 2012-03-19 | 2015-08-03 | 富士通株式会社 | データアクセス方法、プログラムおよびデータアクセス装置 |
| 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 | |
| EP0691008B1 (en) | Flash memory mass storage architecture | |
| US6154808A (en) | Method and apparatus for controlling data erase operations of a non-volatile memory device | |
| 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 | |
| EP0852765B1 (en) | Memory management | |
| KR100389241B1 (ko) | 비휘발성 메모리에서의 가변 크기 데이터의 효율적인관리를 위한 동적 할당 | |
| JP4772214B2 (ja) | 不揮発性記憶装置及びその書き換え制御方法 | |
| US7702844B2 (en) | Address mapping method and mapping information managing method for flash memory, and flash memory using the same | |
| US5860082A (en) | Method and apparatus for allocating storage in a flash memory | |
| JP3215237B2 (ja) | 記憶装置および記憶装置の書き込み/消去方法 | |
| US6865658B2 (en) | Nonvolatile data management system using data segments and link information | |
| US20030229753A1 (en) | Flash memory file system | |
| US20010054129A1 (en) | Method, system and computer program | |
| KR20050067203A (ko) | 비휘발성 저장 시스템의 평균 소거 카운트 유지 방법 및장치 | |
| US8745312B2 (en) | Storage device and method of mapping a nonvolatile memory based on a map history | |
| US20050216687A1 (en) | Data managing method and data access system for storing all management data in management bank of non-volatile memory | |
| KR100914646B1 (ko) | 멀티-플레인 구조의 플래시 메모리 관리 방법 | |
| JPH0896588A (ja) | 半導体記憶装置 | |
| JPH08315596A (ja) | 半導体記憶装置 | |
| US20070005929A1 (en) | Method, system, and article of manufacture for sector mapping in a flash device | |
| CN113485974A (zh) | Nor闪存使用yaffs的方法及装置 | |
| JPH0896589A (ja) | 半導体記憶装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 19970311 |