(57)【特許請求の範囲】
【請求項１】
プロセッサと、主記憶装置と、電気的に書替え可能かつ不揮発性を有するランダムアクセス可能な半導体メモリ素子を用いて構成したファイル記憶装置とを備えてなる情報処理システムもしくは通信処理システム装置のファイル記憶装置において、
前記プロセッサから前記ファイル記憶装置をアクセスするための第１のアドレスを入力し、前記第１のアドレスに対応して前記ファイル記憶装置を構成する半導体メモリ素子の物理的な位置を示す第２のアドレスに変換するアドレス変換手段と、前記ファイル記憶装置における記憶内容のアクセスする時間を計数するタイマ手段と、前記ファイル記憶装置を制御する制御プロセッサとを備え、
前記制御プロセッサは、前記タイマ手段の値が予め定めた第１の所定の値になると、前記アドレス変換手段に入力される前記第１のアドレスに対応して変換出力する前記第２のアドレスの値を予め定めた第２の所定の値だけシフトさせ、前記第１のアドレスに対応する前記第２のアドレスを、前記半導体メモリ素子の記憶領域において所定の範囲で循環させることにより、前記半導体メモリ素子のそれぞれの記憶領域での書替え消去回数を制御することを特徴とする半導体ファイル記憶装置。
【請求項２】
前記半導体ファイル記憶装置の前記半導体メモリ素子の物理的な記憶領域において、
前記第１のアドレスに対応した第２のアドレス領域の予備領域として、一つ以上の所定の容量を有する記憶領域を備え、
前記タイマ手段の値が前記第１の所定の値になると、前記制御プロセッサは、前記アドレス変換テ−ブルに入力される前記第１のアドレスに対応する第２のアドレスを少なくとも前記予備領域の所定の容量に対応するアドレスだけシフトさせ、前記第１のアドレスに対応する前記第２のアドレスを、前記半導体メモリ素子の記憶領域において所定の範囲で循環させることにより、前記半導体メモリ素子のそれぞれの記憶領域での書替え消去回数を制御することを特徴とする請求項１に記載の半導体ファイル記憶装置。
【請求項３】
前記半導体ファイル記憶装置において、
前記制御プロセッサが前記第１のアドレスに対応する前記第２のアドレスをシフトする場合、前記第２のアドレスシフト先アドレスを示すポインタを設け、前記ポインタをカウントアップ又はカウントダウンすることにより、前記制御プロセッサが前記第１のアドレスに対応する前記第２のアドレスを変更する順序と変更量を可変としたことを特徴とする請求項１または２に記載の半導体ファイル記憶装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、半導体ファイル記憶装置の構成およびその記憶方式の構成に係り、特に交換機等の通信処理装置に使用するファイル記憶装置として好適な半導体ファイル記憶装置の構成に関する。
【０００２】
【従来の技術】
電話交換機における呼処理プログラム、局デ−タ、課金情報等を格納するファイル記憶装置としては従来ハ−ドディスクドライブ（以下ＨＤＤと呼ぶ）を使用することが一般的である。しかも、電話交換機は２４時間連続運転するものであるため、ここで使用されるＨＤＤも２４時間通電運転することになる。このため、通常の計算機システムで使用されるＨＤＤと比較すると、極めて短時間の数年（平均２．５年）で寿命となり、交換保守作業が必要となることから、メンテナンスフリ−のファイル記憶装置の採用が望まれており、半導体メモリの採用はその代表的な解決手段と考えられている。しかし、リードライトが可能で、しかも電源断時にも記憶内容を保持する不揮発性を有するＥＥＰＲＯＭやフラッシュメモリに代表される半導体メモリにも、書替え消去回数による寿命が有るため、メンテナンスフリ−のファイル記憶装置として使用するためには、寿命を延長するための対策が欠かせない。
ＥＥＰＲＯＭやフラッシュメモリを用いたファイル記憶装置の書替え消去回数制限に対する寿命延長対策としては、特開平３−２５７９８号公報に示された技術が代表的なものとして知られている。これは、ＥＥＰＲＯＭを使用したファイル記憶装置であり、ＥＥＰＲＯＭの欠点である書替え消去回数の制限することを実現する方式である。その概要を説明すると、複数のメモリ素子を用意し、各素子の消去書替え回数を記録して管理し、ＥＥＰＲＯＭの書替え保証回数より小さなある規定回数に達したら予備用として用意してあったメモリ素子に切り替えて使用することにより、記憶デ−タの保護を図るものである。その他にも、特開平６−１２４５９６号公報に示された技術がある。これは、書替え消去回数の限界によりフラッシュメモリが寿命となる性質に対して、フラッシュメモリの消去単位領域ごとに消去回数を管理し、消去回数が規定した値に達したら規定に達した領域と消去回数の少ない領域のデータを入れ替えることにより、各消去単位領域の消去回数を均一化し長寿命化を図るものである。
【０００３】
【発明が解決しようとする課題】
電話交換機のファイルメモリとして使用されているＨＤＤは、機械的に動作するため寿命があり、かつ２４時間通電されることが多いため、ＨＤＤの機械的部分の耐久性の為２から３年ごとにＨＤＤを交換する必要がある。そのためメンテナンスする手間がかかると共に、ＨＤＤの費用がかかることになる。また、ＨＤＤは同一機種のライフサイクルが短いため、交換しようとしたとき同一機種のＨＤＤが生産されてなく、別のＨＤＤを採用するために、電話交換機側で何らかのインタ−フェ−ス変更が必要となることが多く、多大な設計費がかかっていた。
【０００４】
従って、上述のように半導体メモリをファイルメモリとして採用することになるのであるが、半導体メモリを採用しても、フラッシュメモリを含め、ＲＯＭ系の半導体不揮発性メモリにもデータの保持時間に限界があり、この限界を超えるとデータが消失する現象が起こるため、長時間ファイルメモリに書き込みを行わないと装置の信頼性を低下させるという問題は残る。また、フラッシュメモリには消去回数に限界があり、同じ領域に消去が集中するとフラッシュメモリを使用したファイルメモリの寿命が短くなるという問題も残る。さらに、書き込み動作の前にその書き込む領域を消去する必要があるフラッシュメモリでは、一般的に書き込み単位領域より消去単位領域の方が広いため、デ−タの書き替えの場合、消去単位領域のデ−タを一度デ−タの一時格納領域であるバッファメモリに格納し、書き込み単位領域を含む消去単位領域を消去後書き込むのだが、データの消去後、書き込む前もしくは書き込み中に電源断等の障害が発生すると揮発性であるバッファメモリに格納されたデータが失われてしまい、装置の信頼性を低下させるので、高信頼性が要求される交換機のファイルメモリとして用いるには何らかの対策が必要となる。
【０００５】
先に示した従来技術では、上述のような半導体メモリの寿命や信頼性向上対策として、メモリ素子の劣化状態を消去回数により把握して壊れる前に代替のメモリ素子に切替えるという方式を採用しているが、この方式では実際の記憶容量の倍以上のメモリ容量を備える必要がある。すなわち代替のメモリは、最初に使用するメモリが壊れる迄はまったく使用しないし、また壊れたメモリは壊れたあとは不必要になってしまう。これは実装スペ−スにおいて非常に無駄が大きくなり、近年オフィス等にも設置されることが多くなった交換機（特に私設構内交換機）としては、望ましいことではない。また、もう１つの従来技術では、メモリ素子の劣化状態を消去回数により把握して壊れる前に代替のメモリ素子に切替えるという方式を採用しているが、通常デ−タの書替えは全体的に起こる訳ではなく、部分的に劣化しているだけなのにメモリチップ全体を非使用状態にしてしまうのは経済的に無駄が大きくなり、これも交換機（特に私設構内交換機）としては、望ましいことではない。さらに、従来技術では、全記憶領域の消去回数を管理することによって、消去回数を全記憶領域一律に近づけるという方式を採用しているが、この方式ではデ−タを入れ替えるための消去回数の少ない領域をサーチする制御が複雑になるものである。また、従来技術では、全記憶領域の消去回数を管理することにより消去回数を全記憶領域一律に近づけるという方式も採用しているが、この方式では、全記憶領域の消去回数を管理するメモリ領域が増えることによりコストが高くなる。なお、従来技術では、全記憶領域の消去回数を管理することにより消去回数を全記憶領域一律に近づけるという方式も提案しているが、この方式では、デ−タ入替え時には必ず入れ替える領域を含むデ−タをバッファメモリに格納して書き込み領域を消去後デ−タを入れ替えて書き込むのだが、消去中もしくは消去後の書き込み完了前に電源断等の障害が起こるとデ−タが消失してしまい信頼性を低下させることになり、これも交換機として望ましいことではない。
【０００６】
本発明の目的は、上述したファイルメモリの諸課題を解決することである。より具体的には、半導体メモリを使用したファイルメモリであって、長寿命かつ信頼性の高いファイルメモリを、簡単・小型・経済的な構成で、しかも、簡単な制御方式により実現すること、さらに、このように構成した半導体メモリを使用したファイルメモリを長時間にわたり容易に使用（リードライト、データ保持）する方式を提供することにある。
【０００７】
【課題を解決するための手段】
本発明では、上述した課題を解決するために、まず、電話交換機におけるファイル記憶装置として、従来のＨＤＤに替わり、機械的に動作しない半導体メモリ素子であるフラッシュメモリで構成したファイルメモリを使用することによりメンテナンスフリ−のファイルメモリを実現する。そして、半導体メモリのデータの保持時間に限界があること等によってデ−タが消失するのを防ぐため、周期的もしくは数量的ににデータを書き直す（以下リフレッシュと呼ぶ）ことにより、システムの信頼性を高める方式とした。ここで、半導体メモリをリフレッシュする際に、リフレッシュをするＣＰＵ（中央処理制御部）から、ファイル記憶装置に対しての仮想的な位置を示す第１のアドレスに対応した半導体メモリチップの実際の物理的な位置を示す第２のアドレスを循環させることにより、特定の第１のアドレスに対する書替え消去回数が多く発生しても、実際のファイル記憶装置における半導体メモリの書替え消去回数を均一化することにより、ファイル記憶装置の寿命を延ばす構成とした。なお、半導体メモリにフラッシュメモリを使用する場合では、フラッシュメモリのデータの書き直しには書き直す領域を一旦消去しなければならないので、リフレッシュにおけるデ−タの書き直しの時に、書き直し先の領域として予備領域を利用することにより、リフレッシュ時に電源断などの障害が起きた場合でもリフレッシュする領域のデータを保護する構成として信頼性を高める構成とした。
【０００８】
上述の本発明による構成や方式を実現する具体的手段としては、ファイル記憶装置を構成するフラッシュメモリにおける記憶領域に生ずる書替え消去回数の合計が規定した値に達したら、もしくは時間当りに起こる消去回数が知りえている場合、規定した値に達するまでの予想時間を１周期としてその時間に達したら、本発明のリフレッシュを開始することである。以下、本発明のリフレッシュをさらに説明する。第１のアドレスに対応する第２のアドレスが示す全領域よりも１ブロック多く第２のアドレス領域を設ける。ここでいうブロックとはフラッシュメモリにおける最小消去単位である。また、余分に１ブロック多く設けた領域を循環用予備領域ということにする。第１のアドレスに対応した第２のアドレスが示すブロックのデータを、第１のアドレスに対応している第２のアドレス以外の循環用予備領域に書き込む。リフレッシュ終了後は以下の説明のようにアドレス変換テ−ブルを書き替える。リフレッシュにより書き込まれたブロックの第２のアドレスをリフレッシュが行われた第１のアドレスに対応するようにアドレス変換テ−ブルを書き替える。リフレッシュ直前にリフレッシュが行われたアドレス変換テ−ブルの第１のアドレスに対応していた第２のアドレスを循環用予備領域にする。リフレッシュをする第１のアドレスを示すポインタをインクリメントする。その時ポインタの値がファイル記憶装置において最大である第１のアドレスを超えたら、ポインタ値を最小である第１のアドレスに設定する。
【０００９】
以上の手段により第１のアドレスに対応する第２のアドレスを循環させながらリフレッシュすることにより、デ−タの保持時間の限界があること等によってファイルメモリのデ−タが消失するのを防ぎ、第２のアドレスに発生する書替え消去回数を均一化することによりファイルメモリの寿命を伸ばし、リフレッシュにおいてデ−タを書き込みしている時に電源断等の障害が発生してもデ−タは保護される。
【００１０】
【作用】
上述のような手段・構成・方式によりファイルメモリを構成することにより、まず、電話交換機のファイル記憶装置として半導体メモリ素子を使用しメンテナンスフリ−とできるので、交換システムの保守費及びＨＤＤの部品代を節減できる。しかも、ＨＤＤを使用した場合に生じていた、同一機種のライフサイクルが短いため交換しようとしたとき同一機種がないために、ＨＤＤ交換の時点において電話交換機側で何らかのインタ−フェ−ス変更するという作業が不要となり、ＨＤＤ交換時の多大な設計費を節減することができるので、経済的なシステムが構築出来るものである。
【００１１】
また、リフレッシュにより周期的にメモリのデータを書き直しデータの保持時間に限界があること等によってデ−タが消失するのを防止することにより、交換機のように１０数年デ−タの書替えが起こらない装置においても半永久的に問題なく稼動することができるので、高信頼度のファイルシステムが提供出来る。そして、第１のアドレスに対応する第２のアドレスを周期的もしくは数量的に変えることにより、ある特定の第１のアドレスへの書替え回数が多い場合でも、メモリの書替え消去回数の限界に到る前に別の第２のアドレスを割り付けることによりメモリの寿命が延長される。すなわち、長寿命のファイルシステムが提供出来る。さらに、リフレッシュする領域のデ−タを予備の領域に書き込むことにより、リフレッシュする領域のデータを消去せずにリフレッシュを行なうので、電源断等の障害が発生してもメモリ内のデータの消去を防ぐことができる。すなわち、システムの使用者にとって、使い勝手のよい信頼度の良いファイルシステムが提供出来る。しかも、リフレッシュする第１のアドレスに対応した第２のアドレスを単純な循環方式で変更することにより、第２のアドレスを変更する論理を単純化でき、リフレッシュに要する時間を短縮することができる高速動作か可能なファイルシステムが提供出来るものである。
【００１２】
【実施例】
以下本発明による半導体ファイル装置の実施例として、構内電話交換機（以下ＰＢＸと呼ぶ）に使用するファイル記憶装置として、従来のディスク装置に替わり、フラッシュメモリを用いてファイル記憶装置を構成した例をとりあげ、図面を用いて詳細に説明する。
＜実施例１＞
本発明による半導体ファイル装置の代表的な実施例を、図１から図１１を用いて詳細に説明する。
（１）構成１（全体構成）
図１は、本発明による半導体ファイル装置を使用したＰＢＸのブロック構成図である。ＰＢＸは、多くの端末（電話等）の中から通信を希望する端末を相互に接続して通信を可能にするものであり、端末間は加入者側の端末（内線）に接続される内線回路１と、電話局（一般には公衆通信網）とのインタフェースである局線トランク３との間に設置した通話路スイッチ２によりつながれるもので、制御装置４は、通話路スイッチ２の接続等を行いＰＢＸを制御するもので、後で示すように本発明による半導体ファイル装置を備えている。図２は、図１で示したＰＢＸの制御装置４の構成を示すブロック構成図であり、ＰＢＸを制御する中央処理制御部（ＣＰＵ）５と、ＣＰＵ５の動作プログラムやデ−タが格納される揮発性メモリで構成された主記憶装置（ＭＭ）６と、ＣＰＵ５のプログラムやデ−タが格納しておく本発明による半導体ファイル記憶装置の記憶領域である不揮発メモリで構成された従来のハ−ドディスクドライブＨＤＤに相当する記憶部８（以下の説明では、従来のハ−ドディスクドライブと同様な機能を有するのでＨＤＤあるいはハ−ドディスクドライブと称することがある）および本発明による半導体ファイル記憶装置の制御部でありＨＤＤ８を制御するコントロ−ラ−（ＤＫＣ）７からなるファイル記憶装置とにより構成した。図３は、ＰＢＸに本発明の半導体ファイル装置を使用した場合に、ＨＤＤ８に格納したプログラムやデ−タの構造を示すファイル構成図であり、本発明の半導体ファイル装置では、ＰＢＸを制御するために、プログラムとしてはＰＢＸのオペレ−ティングシステム（ＯＳ）１０と、通信を制御する呼処理プログラム１１、デ−タとしてはＰＢＸが納められる局の内線番号等の局デ−タ１３と、通信数などの記録であるトラフィックデ−タ１４と、通信が行われたときにかかる料金の記録であるの課金デ−タ１５とを格納記憶した。
【００１３】
（２）構成２（詳細構成）
ＰＢＸは、一般に２４時間連続で使用されるものであり、そこに使用されるＨＤＤは、２４時間通電されデ−タの書替えは頻繁に行われいる。このため、従来の機械的に動作するディスク装置では、機械的部分の耐久性に限界から、ある期間ごとにディスク装置を交換するが必要あったため、運用保守上メンテナンスフリ−が望まれることから、本発明で詳細に示すような、機械的に動作しない半導体メモリ素子であるフラッシュメモリからなる半導体ファイル装置の使用が適している。一般に、フラッシュメモリには、書替え消去回数による性能の制限があるため、フラッシュメモリを単純に使用するだけでは、メモリの寿命に伴うメンテナンスが必要となり、２４時間連続で使用するＰＢＸの半導体ファイル装置としては、従来のディスク装置より改善はされていても、まだ不十分である。そこで、本発明による半導体ファイル装置が有効なものとなる。以下、本発明による半導体ファイル装置のフラッシュメモリ寿命延長方式を従来のフラッシュメモリ寿命延長方式と比較しながら説明する。
【００１４】
図４は、従来技術のフラッシュメモリ寿命延長方式の動作を示す動作図で、図５は、ファイル装置の物理的なアドレスに生じる書替え消去回数を示す特性図である。図４で示した方式は、フラッシュメモリの最小消去単位であるブロックごとの書替え消去回数を、ファイル記憶装置全域に含まれるブロック全てについて管理し、あるブロックの書替え消去回数が規定した値に達したら規定値に達したブロックのデ−タとファイルメモリ全域に含まれるブロックの中で書替え消去回数が最小であるブロックのデ−タを交換することにより、今まで書替え消去回数の多かったブロックは少ないブロックに、少なかったブロックは多かったブロック移動し、この処理によりファイル記憶装置全域のブロックごとに生じる書替え消去回数が均一化させ、ファイル記憶装置の寿命を伸ばすものである。すなわち、（ａ）あるブロックの書替え消去回数が規定した値に達したらファイル記憶装置全域に含まれるブロックの中で書替え消去回数が最小であるブロックをサ−チする、（ｂ）規定値に達したブロックと書替え消去回数が最小であるブロックのデ−タを交換するため２つのブロックのデ−タをデ−タの一時記憶領域であるバッファメモリにリ−ドする、（ｃ）フラッシュメモリではブロックにライトする前にそのブロックをイレ−スしなければならないので、交換する２つのブロックをイレ−スし、イレ−スが終了したらバッファメモリに格納されているデ−タを交換させるようにライトする、というステップでデ−タ交換を行うものである。しかし、この方法ではブロックのデ−タを消去後２つのブロックのデ−タを交換させるようにライトすることが完了する前に電源断等の障害が発生するとデ−タが消失してしまうという問題があるため、信頼性が低くなってしまっている。またファイル記憶装置全域に含まれる全ブロックの書替え消去回数を管理する領域及び処理が増える、書替え消去回数が最小であるブロックをサ−チする時間がかかる等制御が複雑になっている。このため、図５（ｂ）のようにファイル記憶装置の実際の位置を示す物理的なアドレスごとの書替え消去回数がランダムに発生する場合（一般の情報処理装置）には、複雑な処理でも上記のようにファイル記憶装置全域に含まれるブロックごとの書替え消去回数を管理してデ−タ交換する方法が有効であるが、２４時間連続運転等高信頼性が要求され、しかも、ファイル記憶装置の実際の位置を示す物理的なアドレスごとの書替えが、頻繁に起こるのは課金デ−タ等特定のものだけでプログラム等の書替え頻度は小さいため、ファイル記憶装置では書替え消去回数が生ずる位置が特定され、消去回数が図５（ａ）のように一部のエリアに集中するＰＢＸには最適とはいえない。
【００１５】
上述したようにＰＢＸのような通信処理装置では、ファイル記憶装置のアクセス特性に図５（ａ）で示したような特徴があるので、以下で説明する本発明による半導体ファイル記憶装置の寿命延長方式が有効となる。図６は、本発明の半導体ファイル記憶装置のハ−ドウェア構成の一例を示したブロック構成図であり、図２において点線で囲んで表示したファイル記憶装置として、従来のディスク装置に替わり、フラッシュメモリを使用したファイル記憶装置である。本発明のファイル記憶装置は、ファイル記憶装置内の制御をするプロセッサ１６と、図２で示したＣＰＵ５からファイル記憶装置の仮想的な位置付けを示す第１のアドレスを、実際のフラッシュメモリチップにおける物理的な位置である第２のアドレスに変換するアドレス変換テ−ブル１７と、ファイル記憶装置内におけるフラッシュメモリチップに生ずるブロックごとの全書替え消去回数を計数しリフレッシュ起動のトリガとなる消去回数カウンタ−１８と、リフレッシュする第１のアドレスを示すリフレッシュ第１ポインタ１９と、リフレッシュする第１のアドレスのデ−タを書き込む第２のアドレスを示すリフレッシュ第２ポインタ２０と、フラッシュメモリに読み書きするデ−タを一時的に格納するバッファメモリ２１と、実際にプログラムやデータを格納するフラッシュメモリ２２とにより構成した。図７は、アドレス変換テ−ブル１７の構成例を示したテーブル構成図でり、以下のように作成して使用するものとした。まず、プロセッサ１６が、ファイル記憶装置のフォ−マット（初期設定）時にフラッシュメモリ２２の第２のアドレスであるブロックを順にイレ−ス、ライト、リ−ドし、ブロックが正常に使用できるか調べ（フォ−マットチェック）、正常なブロックを示す第２のアドレスを第１のアドレスに割り付けていく。ここで、チェック結果が正常でない（ＮＧ）と判断されたブロックは、以後使用しないようにする。この割付けを繰返し行い、最大の第１のアドレスに対する第２のアドレスの割付けが終了するとアドレス変換テ−ブル１７が完成する。そして、ＣＰＵ５がファイル記憶装置に対して仮想的な位置を示す第１のアドレスによりアクセスしてくると、プロセッサ１６がアドレス変換テ−ブル１７を参照し、その第１のアドレスに対応する第２のアドレスが示すフラッシュメモリチップ２２の実際の物理的な位置にアクセスする。これにより、もし第１のアドレスに対する第２のアドレスが示すブロックが壊れても、壊れたブロックを示す第２のアドレスに替わり、まだ第１のアドレスに割り付けられていない正常なブロックを示す第２のアドレスにアドレス変換テ−ブルを書き替えることにより正常にファイル記憶装置は動作することができる。すなわち、ＰＢＸのような通信処理装置で使用するファイル記憶装置では、書替え消去回数が生ずる位置が特定されるので、本発明の半導体ファイル記憶装置の寿命延長方式のように、規定した周期もしくは書替え消去回数に達したらファイル記憶装置に格納されているプログラム及びデ−タの物理的なアドレスを単純に循環させることにより、複雑な制御なしにファイルメモリ全域に含まれるブロックごとに生じる書替え消去回数を均一化させることができ、ファイルメモリの寿命を伸ばすことができるのである。
【００１６】
（３）動作
次に図８から図１１を用いて本発明による半導体ファイル記憶装置の動作について説明する。図８は、半導体ファイル記憶装置のリフレッシュ起動処理の動作を示すフロ−チャ−ト、図９は、半導体ファイル記憶装置のリフレッシュ動作を示すフロ−チャ−トであり、図１０は、半導体ファイル記憶装置のリフレッシュ動作によるデータの遷移を示す遷移図、図１１は、半導体ファイル記憶装置のアドレス変換テ−ブル１７とフラッシュメモリチップ２２のリフレッシュ処理における状態の遷移を示す遷移図である。
まず、ファイル記憶装置のフォ−マット（初期設定）時に、上述のようにアドレス変換テ−ブル１７を作成し、リフレッシュ第１ポインタ１９を最小である第１のアドレス「０」、リフレッシュ第２ポインタ２０を「アドレス変換テ−ブル１７において第１のアドレスに対応づけられていないブロックを示す第２のアドレス」にそれぞれ設定する。この領域は、リフレッシュ前には循環用予備領域となる。
次に、図８を用いてリフレッシュ起動処理を説明する。
▲１▼消去回数カウンタ−１８は、「０」に設定しておく。（ａ）
▲２▼ファイル記憶装置に対しＣＰＵ５からライトアクセスがある場合、フラッシュメモリ２２のライト時には、ライト前にライトするブロックの消去を行わなければならないので、消去回数カウンタの値をチェックする。（ｂ）
▲３▼ライト実施後、消去回数カウンタ１８の値を＋１インクリメントする。（ｃ）
▲４▼消去回数カウンタ１８の値が、フラッシュメモリ２２の消去回数の限界よりも低い規定された値に達すると、本発明のリフレッシュ処理に起動がかかり、リフレッシュ動作が実行される（ｄ）。
【００１７】
以下に、本発明のフラッシュメモリのリフレッシュ動作について、図９および図１０を用いて説明する。
▲１▼リフレッシュ処理に起動がかかると、リフレッシュ第１ポインタ１９が示す第１のアドレスから、アドレス変換テーブル１７を用いてリフレッシュする第２のアドレスを得て、その第２のアドレスが示すフラッシュメモリのブロックのデータをバッファエリアに読み込む。〔図９（ａ）、図１０（ａ）〕
▲２▼リフレッシュ第２ポインタ２０が示したフラッシュメモリの第２のアドレスにより、フラッシュメモリ２２の指定されたアドレスのブロックを消去する〔図９（ｂ）、図１０（ｂ）〕
▲３▼バッファエリア２１に読み込んだデータを消去したブロックに書き込む。〔図９（ｃ）、図１０（ｃ）〕
▲４▼リフレッシュ第１ポインタ１８が示す第１のアドレスに対応した第２のアドレスを、リフレッシュ第２ポインタ２０に格納する。〔図９（ｄ）、図１０（ｄ）〕
▲５▼フラッシュメモリ２２に書き込んだ第２のアドレスの値を、新たに第１のアドレスに対応させるようにアドレス変換テ−ブル１７を書き変える。〔図９（ｅ）、図１０（ｄ）〕
▲６▼リフレッシュ第１ポインタ１９の内容を＋１インクリメントし〔図９（ｆ）、図１０（ｄ）〕、システムの最大である第１のアドレスを超えたら、最小である第１のアドレスをリフレッシュ第１ポインタ１９に格納し〔図９（ｈ）〕、超えなかったらインクリメントした値をリフレッシュ第１ポインタ１９に格納する〔図９（ｇ）〕。
▲７▼最後に、消去回数カウンタ−１８を「０」に設定し、リフレッシュの１サイクルが終了する。
【００１８】
このサイクルは、図１１で示した遷移図のように、リフレッシュが行われるごとにリフレッシュする領域のデ−タを循環用予備領域に書き込み、その書き込んだ領域の第２のアドレスをリフレッシュした第１のアドレスに対応させ、最初に第１のアドレスに対応していた第２のアドレスを循環用予備領域にするもので、リフレッシュのトリガがかかる度に半永久的に続けて行う。
【００１９】
本発明の半導体ファイル記憶装置のフレッシュ処理を、リフレッシュ第１ポインタ１９の内容が最小である第１のアドレスから最大である第１のアドレスまで行うと、全ての第１のアドレスに対応する第２のアドレスが変わるとともに、全データのリフレッシュが行われることになり、デ−タの保持時間に限界があること等によってデ−タが消失するのを防止できる。第１のアドレスに対応する第２のアドレスが初期設定時の対応と同じになるまでには、すなわち、リフレッシュ第１ポインタ１８の内容が、最小である第１のアドレスから最大である第１のアドレスまでリフレッシュ第１ポインタの内容が変化するには、リフレッシュが〔（最大である第１のアドレス）−（最小である第１のアドレス）＋１〕回行われるまでかかるので、消去回数カウンタ−１８がリフレッシュを起動する規定値を十分に余裕をもって設定しておけば、ある特定の第１のアドレスに対応する第２のアドレスに消去が集中していても、一旦本発明のリフレッシュで違う第２のアドレスが割り当てられば、再度同じ第２のアドレスが割り当てられることはない。従って、フラッシュメモリ２２の全ブロックの消去回数を管理する大きな領域を用いずに、単純な制御で第１のアドレスに対応した第２のアドレスの消去回数を均一化することができ、しかも、ファイルメモリ２２の寿命延長となるものである。
【００２０】
また、本発明によりファイルメモリ２２をリフレッシュをする際の書き込むブロックは、第１のアドレスに対応した第２のアドレスが示すブロックではなく循環用予備領域であるブロックなので、リフレッシュにおいて行われる消去の後、データを書き込む前、もしくは書き込み中に電源断などの障害が発生しても既存のデータは保護されており、信頼性が大変高まっている。
【００２１】
すなわち、本実施例によれば、第１のアドレスに対応した第２のアドレスをリフレッシュが行われる度に変えていくことにより、デ−タの保持時間に限界があること等によってデ−タが消失することを防止し、ブロックごとに起こる消去回数を均一化することができ、それによりフラッシュメモリのデータの信頼性を向上させ寿命を延長する効果がある。また、本発明のリフレッシュをする際の書き込みする領域は循環用予備領域を使うため、リフレッシュ時のデータの消去を防ぐ効果がある。このため、特定領域に書替え回数が集中するＰＢＸのファイル記憶装置として、本実施例による半導体ファイル記憶装置は非常に有効である。
【００２２】
＜実施例２＞
本発明による半導体ファイル記憶装置のほかの実施例について、図１２および図１３を用いて説明する。
図１２は、本発明による半導体ファイル記憶装置のほかの実施例のハ−ドウエア構成を示すブロック構成図であり、実施例１の半導体ファイル記憶装置が、消去回数カウンタ−１８によってリフレッシュを起動するのに替わり、リフレッシュ起動用タイマ−２３を用いてリフレッシュ処理を行うものである。図１３は、リフレッシュ起動用タイマ−を用いた本発明のリフレッシュ操作を示すフロ−チャ−トであり、リフレッシュ起動用タイマ−の動作以外のその他の部分動作は、実施例１と同様である。
【００２３】
以下、図１３を用いて、リフレッシュ起動用タイマ−の動作を中心に、本実施例で示す半導体ファイル記憶装置のリフレッシュ動作について説明する。
▲１▼まず始めに、リフレッシュ起動用タイマ２３を「０」に設定し（ａ）、一定時間後（タイマの設定によって周期は変化する）、タイマ２３の値をインクリメントする。（ｂ）
▲２▼タイマ２３の値が、規定値（ここで、規定値は、フラッシュメモリ２２の消去回数の制限値を、時間当たりに生ずる消去回数及び第１のアドレスに対応する全ての第２のアドレスに含まれるブロックの数で割った値より十分低い値に設定する。）に達したら、リフレッシュ処理を行い（ｄ）、規定値に達しなかったら一定時間後タイマ２３の値をインクリメントし（ｅ）、規定値に達するまでこの動作を繰り返す。（ｃ）
▲３▼リフレッシュ動作（ｆ）は、実施例１と同様である。
【００２４】
本実施例の半導体ファイル記憶装置によれば、実施例１と同様に、ファイルメモリのデ−タの信頼性を向上させ、寿命の延長及びリフレッシュ時のデ−タの消去を防ぐ効果がある。
【００２５】
＜実施例３＞
本発明による半導体ファイル記憶装置の別の実施例について、図１４および図１５を用いて説明する。
図１４は、半導体ファイル記憶装置の別の構成を示すブロック構成図であり、実施例１および実施例２とほぼ同様な構成であるが、リフレッシュ予備ブロックポインタ２４とリフレッシュ予備ブロック管理領域２５を用いるものである。図１５は、リフレッシ予備用ブロック管理領域を用いた本発明のリフレッシュの動作を示すデータの遷移図であり、以下同図を用いて本実施例の半導体ファイル記憶装置のフレッシュ動作について説明する。
【００２６】
▲１▼初期設定時に、フラッシュメモリ２２の第１のアドレスに割り付けられた第２のアドレス以外に、２ブロック以上の循環用予備領域を設け（本実施例（図１５）では、ｎ＋１とｎ＋２の２ブロックとした）、その予備領域のブロック数に応じてリフレッシュ予備用ブロック管理領域２５を設け、リフレッシュ予備用ブロック管理領域に循環用予備領域の第２のアドレスを書き込む。なお、リフレッシュ予備用ブロック管理領域２５内のデ−タが示す循環用予備領域の内、どの領域を本発明のリフレッシュの時に使用するかということを示すのがリフレッシュ予備ブロックポインタ２４である。このリフレッシュ予備ブロックポインタ２４は、初期設定時、リフレッシュ予備用ブロック管理領域の先頭のアドレスの値を設定する（図１５では、メモリアドレス０に設定）。
▲２▼実施例１もしくは実施例２と同様に、消去回数カウンタ−１８もしくはリフレッシュ起動用タイマ２３（図１５では、これらをまとめてブロック２６として表示した）の値が、ある規定値に達したら本発明のリフレッシュを起動する。
【００２７】
▲３▼リフレッシュでは、実施例１および実施例２と比べて、リフレッシュ第２ポインタ２０に設定する値をリフレッシュ予備ポインタ２４を使用して設定することだけが異なり、他は同様の動作をする。具体的には、リフレッシュが起動されると、図１５のように、ｉ）リフレッシュ予備ブロックポインタ２４が示すリフレッシュ予備用ブロック管理領域２５に書かれている第２のアドレスをリフレッシュ第２ポインタに設定し、ｉｉ）リフレッシュ第２ポインタが示す第２のアドレスにリフレッシュ第１アドレスのデ−タを書き込む。ｉｉｉ）リフレッシュの１サイクルが終了したら、リフレッシュ第１ポインタ１８とリフレッシュ予備ブロックポインタ２４をインクリメントする。このように、フラッシュメモリ２２に設けた循環用予備領域を埋めるようにリフレッシュを行うものである。
【００２８】
これにより、消去回数の多い領域が連続している場合でも、連続する領域のブロックの数をリフレッシュの循環用予備領域として設けることにより、本発明のリフレッシュ時の第１のアドレスに対応する第２のアドレスの変更時において、連続した第２のアドレスが割り付けられないため、フラッシュメモリの寿命を延長する効果がある。また、実施例１およおび実施例２と同様に、ファイルメモリのデ−タの信頼性を向上させリフレッシュ時のデ−タの消去を防ぐ効果がある。
【００２９】
【発明の効果】
本発明の半導体ファイル記憶装置とリフレッシュ方式によれば、簡単な構成と制御により、特定の領域への書替え消去回数が著しく多い場合でも、周期的にもしくは数量的に第１のアドレスに対応する第２のアドレスを変えることにより、循環する第２のアドレスの総領域において書替え消去回数が均一化されるので、書替え消去回数が寿命に達するまでの時間を延ばすることができる。また、リフレッシュ時にデータをフラッシュメモリへ書き込むことにより、データの保持時間に限界があること等によってデ−タが消失するのを防止することができる。しかも、リフレッシュをする際の書き込むブロックは、第１のアドレスに対応した第２のアドレスが示すブロックではなく、循環用予備領域であるブロックなので、リフレッシュにおいて行われる消去の後、デ−タを書き込む前もしくは書き込み中に電源断等の障害が発生しても、既存のデ−タは保護されており、信頼性が大変高まっている。
【図面の簡単な説明】
【図１】本発明による半導体ファイル装置を用いたＰＢＸのブロック構成図。
【図２】同じく、ＰＢＸの制御装置のブロック構成図。
【図３】同じく、ＰＢＸのＨＤＤに格納したデ−タの構成を示すファイル構成図。
【図４】従来のフラッシュメモリ寿命延長方式の動作を示す動作図。
【図５】メモリの物理的アドレスに生じる書替え消去回数を示した特性図。
【図６】本発明の半導体ファイル記憶装置の構成を示すブロック構成図。
【図７】同じく、アドレス変換テ−ブルのテーブル構成図。
【図８】同じく、半導体ファイル記憶装置のリフレッシュ起動処理のフロ−チャ−ト。
【図９】同じく、半導体ファイル記憶装置のリフレッシュのフロ−チャ−ト。
【図１０】同じく、半導体ファイル記憶装置のリフレッシュ時のデ−タ遷移図。
【図１１】同じく、リフレッシュ時のアドレス変換テ−ブルの遷移図。
【図１２】本発明の半導体ファイル記憶装置の他の構成を示すブロック構成図。
【図１３】同じく、リフレッシュの動作を示すフロ−チャ−ト。
【図１４】本発明の半導体ファイル記憶装置の別の構成を示すブロック構成図。
【図１５】同じく、リフレッシュの動作を示すデータの遷移図。
【符号の説明】
５…中央制御装置、      ６…主記憶装置、      ７…コントロ−ラ−、
８…ファイルメモリ、
１６…プロセッサ、                １７…アドレス変換テ−ブル、
１８…消去回数カウンタ−、        １９…リフレッシュ第１ポインタ、
２０…リフレッシュ第２ポインタ    ２１…バッファメモリ、
２２…フラッシュメモリ、          ２３…リフレッシュ起動用タイマ、
２４…リフレッシュ予備ブロックポインタ、
２５…リフレッシュ予備用ブロック管理領域。
【図１】
0003565583.tif 000002
【図２】
0003565583.tif 000003
【図３】
0003565583.tif 000004
【図４】
0003565583.tif 000005
【図５】
0003565583.tif 000006
【図６】
0003565583.tif 000007
【図７】
0003565583.tif 000008
【図８】
0003565583.tif 000009
【図９】
0003565583.tif 000010
【図１０】
0003565583.tif 000011
【図１１】
0003565583.tif 000012
【図１２】
0003565583.tif 000013
【図１３】
0003565583.tif 000014
【図１４】
0003565583.tif 000015
【図１５】
0003565583.tif 000016