(57)【要約】【課題】フラッシュメモリのリード回数を減らし、フラッシュメモリの寿命を延ばす。【解決手段】第1のメモリデバイスと、前記第１のメモリデバイスの誤り発生率より誤り発生率が小さく、かつ前記第1のメモリデバイスのデータがコピーされる第２のメモリデバイスと、前記第1のメモリデバイスからコピーした第２のメモリデバイス上のデータが削除された回数を第1のメモリデバイス上のデータ毎にカウントする削除回数計数部を備えた構成を有し、前記第1のメモリデバイスからデータがコピーされた第２のメモリデバイス上のデータを削除する際に前記削除回数計数部で計数された削除回数が小さいデータを削除することができ、第1のメモリデバイスのリード回数を減らすことが可能となり、ビット化けが起こる可能性が低くなると共に、リフレッシュ動作による書き換え回数が減ることで第1のメモリデバイスの寿命を延ばす。【選択図】図１
2011203927.tif 000002
【特許請求の範囲】
【請求項１】
第1のメモリデバイスと、
前記第１のメモリデバイスの誤り発生率より誤り発生率が小さく、かつ前記第1のメモリデバイスのデータがコピーされる第２のメモリデバイスと、
前記第1のメモリデバイスからコピーした第２のメモリデバイス上のデータが削除された回数を第1のメモリデバイス上のデータ毎にカウントする削除回数計数部と、を備え、
前記第1のメモリデバイスからデータがコピーされた第２のメモリデバイス上のデータを削除する際に前記削除回数計数部で計数された削除回数が小さいデータを削除する情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記削除回数計数部は、データが格納された第1のメモリデバイスのアドレス毎に削除回数を計数する情報処理装置。
【請求項３】
請求項１に記載の情報処理装置であって、
前記削除回数計数部は、第1のメモリデバイスのデータ消去単位であるブロック毎に削除回数を計数する情報処理装置。
【請求項４】
請求項３に記載の情報処理装置であって、
前記第１のメモリデバイスはフラッシュメモリである情報処理装置。
【請求項５】
請求項４に記載の情報処理装置であって、
前記第２のメモリデバイスはＤＲＡＭである情報処理装置。
【請求項６】
請求項１から請求項５のいずれか１項に記載の情報処理装置であって、
前記第２のメモリデバイス上のデータを参照するＣＰＵと、
前記ＣＰＵの前記第２のメモリデバイスへの参照頻度を示すＬＲＵリストを保持するＬＲＵリスト部と、を備え、
前記第２のメモリデバイスからデータを削除する場合、前記参照頻度が所定の頻度より小さいデータの中で、前記削除回数の最も小さいデータを削除する情報処理装置。
【請求項７】
請求項１から請求項６のいずれか１項に記載の情報処理装置であって、
揮発性の第３のメモリデバイスと、
不揮発性の第４のメモリデバイスと、を備え、
前記削除回数計数部が計数する削除回数は前記第３のメモリデバイスに保存され、
前記情報処理装置の動作を停止する場合は、前記第３のメモリデバイスに保存された前記削除回数を前記第４のメモリデバイスに保存し、その後に前記第３のメモリデイバスへの電源供給を停止し、
前記情報処理装置の動作を再開する場合は、前記第３のメモリデイバスへの電源供給を再開し、その後に第４のメモリデバイスに保存された前記削除回数を前記第３のメモリデバイスに保存する情報処理装置。
【請求項８】
請求項７に記載の情報処理装置であって、
前記第３のメモリデバイスは前記第２のメモリデバイスと同一であり、及び／又は、前記第４のメモリデバイスは前記第1のメモリデバイスと同一である情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はメモリデバイスを備える情報処理装置に関する。
【背景技術】
【０００２】
近年、計算機や携帯情報機器等の情報処理システムのメモリデバイスとして、フラッシュメモリが使用されている。
しかしながら、フラッシュメモリはリードする際にメモリセルに書き込みが行われ、リードを繰り返すことでセルの閾値が変動し、その結果、保持していた値が変化するリードディスターブの問題が発生する。
この問題の対策として、セルの閾値が変動する前に、消去と再書き込みを行うことで保持した値が変化しないようにセルの状態を保つリフレッシュ動作が一般的に行われている。
しかしながら、フラッシュメモリには、品質を保証することのできる書き換え回数が存在するため、リフレッシュ動作を行うと、ユーザーに保証できる書き換え回数が減少し、フラッシュメモリの寿命が短くなるという欠点がある
そこで、特許文献１では、Ｈ／ＷにてＣＰＵからのリード信号を検出しフラッシュメモリの複数のアドレスに対してリード回数と非リード回数を数え、リード回数が所定回数に達するとＲＡＭにコピーしＲＡＭから読み出し、非リード回数が所定回数に達するとＲＡＭから削除する技術が開示されている。ここで、非リード回数とは、該当アドレスのリードが発生するまでに該当アドレス以外に対してリードが発生した回数のことを意味する。
これによって、フラッシュメモリのリード回数を減らすことでリフレッシュ動作による書き換え回数を減らし寿命を伸ばすことが出来る。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４２２９５７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記技術を用いることによってフラッシュメモリのリード回数を減らすことでリフレッシュ動作による書き換え回数を減らし寿命を伸ばすことが可能となったが、非リード回数が所定回数に達するとＲＡＭから削除するため、利用可能なＲＡＭがあってもリード間隔が長いリードパターンのデータはＲＡＭから削除され、フラッシュメモリのリード回数は減らず、ビット化けが起こる可能性が高まるとともに、リフレッシュ動作による書き換え回数が多くなり寿命が延びないという課題が発生する。
例えば、あるデータに対してある周期でバースト的にリードが発生するリードパターンＡ、Ｂ、Ｃの３つがあり、リードパターンの周期はＡ＜Ｂ＜Ｃとする。ＲＡＭから削除する条件である、所定の非リード回数で表されるリード間隔がＡとＢの間の値であった場合、Ａは常にＲＡＭに残り続けＢとＣは常にＲＡＭから削除される。ここでＡとＢの周期が近い場合や、Ｂの1回のバーストリード時に発生するリード回数がＡのそれより多い場合、フラッシュメモリに与える影響を考慮すると、Ｂが置かれた領域はＡと同様に、もしくはそれ以上にリード回数を減らす必要があるにも関わらず、リード回数は減らないため、ビット化けが起こる可能性が高まる。
【０００５】
本発明は、前記従来の課題を解決するもので、予めＲＡＭから削除される回数を計数しておき、ＲＡＭから削除された回数が少ないデータを優先的にＲＡＭから削除することで、フラッシュメモリのリード回数を減らすことが可能となり、ビット化けが起こる可能性が低くなると共に、リフレッシュ動作による書き換え回数が減ることでフラッシュメモリの寿命を延ばすことができる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の情報処理装置は、第1のメモリデバイスと、前記第１のメモリデバイスの誤り発生率より誤り発生率が小さく、かつ前記第1のメモリデバイスのデータがコピーされる第２のメモリデバイスと、前記第1のメモリデバイスからコピーした第２のメモリデバイス上のデータが削除された回数を第1のメモリデバイス上のデータ毎にカウントする削除回数計数部と、を備えた構成を有する。
【０００７】
この構成により、前記第1のメモリデバイスからデータがコピーされた第２のメモリデバイス上のデータを削除する際に前記削除回数計数部で計数された削除回数が小さいデータを削除することができ、第1のメモリデバイスのリード回数を減らすことが可能となり、ビット化けが起こる可能性が低くなると共に、リフレッシュ動作による書き換え回数が減ることで第1のメモリデバイスの寿命を延ばすことができる。
【０００８】
また、本発明の情報処理装置は、前記削除回数計数部は、データが格納された第1のメモリデバイスのアドレス毎に削除回数を計数する構成を有する。
【０００９】
この構成により、前記第1のメモリデバイスからデータがコピーされた第２のメモリデバイス上のデータを削除する際に前記削除回数計数部で計数された削除回数が小さいデータをアドレス毎に削除することで、第1のメモリデバイスのリード回数を減らすことができ、ビット化けが起こる可能性が低くなると共に、リフレッシュ動作による書き換え回数が減ることで第1のメモリデバイスの寿命を延ばすことができる。
【００１０】
また、本発明の情報処理装置は、前記削除回数計数部は、データが格納された第1のメモリデバイスのデータ消去単位であるブロック毎に削除回数を計数する構成を有する。
この構成により、前記第1のメモリデバイスからデータがコピーされた第２のメモリデバイス上のデータを削除する際に前記削除回数計数部で計数された削除回数が小さいデータをブロック毎に削除することで、第1のメモリデバイスのリード回数を減らすことができ、ビット化けが起こる可能性が低くなると共に、リフレッシュ動作による書き換え回数が減ることで第1のメモリデバイスの寿命を延ばすことができる。
また、本発明の情報処理装置は、前記第１のメモリデバイスはフラッシュメモリである構成を有する。
【００１１】
この構成により、フラッシュメモリからデータがコピーされた第２のメモリデバイス上のデータを削除する際に前記削除回数計数部で計数された削除回数が小さいデータを削除することで、フラッシュメモリのリード回数を減らすことができ、ビット化けが起こる可能性が低くなると共に、リフレッシュ動作による書き換え回数が減ることでフラッシュメモリの寿命を延ばすことができる。  
また、本発明の情報処理装置は、前記第２のメモリデバイスはＤＲＡＭである構成を有する。
この構成により、前記第1のメモリデバイスからデータがコピーされたＤＲＡＭのデータを削除する際に前記削除回数計数部で計数された削除回数が小さいデータを削除することができ、フラッシュメモリのリード回数を減らすことが可能となり、ビット化けが起こる可能性が低くなると共に、リフレッシュ動作による書き換え回数が減ることで第1のメモリデバイスの寿命を延ばすことができる。
【００１２】
また、本発明の情報処理装置は、前記第２のメモリデバイス上のデータを参照するＣＰＵと、前記ＣＰＵの前記第２のメモリデバイスへの参照頻度を示すＬＲＵリストを保持するＬＲＵリスト部を備え、前記第２のメモリデバイスからデータを削除する場合、前記参照頻度が所定の頻度より小さいデータの中で、前記削除回数の最も小さいデータを削除する構成を有する。
この構成により、前記第２のメモリデバイスからデータを削除する場合、参照頻度が小さいデータの中から削除回数の最も小さいデータを削除することができ、第1のメモリデバイスのリード回数を減らすことが可能となり、ビット化けが起こる可能性が低くなると共に、リフレッシュ動作による書き換え回数が減ることで第1のメモリデバイスの寿命を延ばすことができる。
【００１３】
また、本発明の情報処理装置は、揮発性の第３のメモリデバイスと不揮発性の第４のメモリデバイスを備え、前記削除回数計数部が計数する削除回数は前記第３のメモリデバイスに保存され、前記情報処理装置の動作を停止する場合は、前記第３のメモリデバイスに保存された前記削除回数を前記第４のメモリデバイスに保存し、その後に前記第３のメモリデイバスへの電源供給を停止し、前記情報処理装置の動作を再開する場合は、前記第３のメモリデイバスへの電源供給を再開し、その後に第４のメモリデバイスに保存された前記削除回数を前記第３のメモリデバイスに保存する構成を有する。
この構成により、前記情報処理装置が動作を停止した後に動作を再開する場合でも動作停止前に計数した削除回数がクリアされることなく処理を行うことができ、第1のメモリデバイスのリード回数を減らすことが可能となり、ビット化けが起こる可能性が低くなると共に、リフレッシュ動作による書き換え回数が減ることで第1のメモリデバイスの寿命を延ばすことができる。
【００１４】
また、本発明の情報処理装置は、前記第３のメモリデバイスは前記第２のメモリデバイスと同一であり、及び／又は、前記第４のメモリデバイスは前記第1のメモリデバイスと同一である構成を有する。
この構成により、第１のメモリデバイスと第２のメモリデバイスの構成でも、前記情報処理装置が動作を停止した後に動作を再開する場合でも動作停止前に計数した削除回数がクリアされることなく処理を行うことができ、第1のメモリデバイスのリード回数を減らすことが可能となり、ビット化けが起こる可能性が低くなると共に、リフレッシュ動作による書き換え回数が減ることで第1のメモリデバイスの寿命を延ばすことができる。
【発明の効果】
【００１５】
本発明の情報処理装置によれば、ＲＡＭから削除された回数が少ないデータを優先的にＲＡＭから削除することで、リード回数が多くリード間隔が長いバースト的なリードパターンを持つデータに対しても、フラッシュメモリのリード回数を減らすことが可能となり、ビット化けが起こる可能性が低くなると共に、リフレッシュ動作が少なくなり消去回数が減ることでフラッシュメモリの寿命を延ばすことができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態１における情報処理装置の構成を示すブロック図
【図２】本発明の実施の形態１における情報処理装置の動作を説明するフローチャート
【図３】本発明の実施の形態１における情報処理装置の動作を説明するタイミング図
【発明を実施するための形態】
【００１７】
以下に、本発明の実施の形態について、図面を参照しながら説明する。
（実施の形態１）
図１は、本発明の実施の形態１における情報処理装置の機能ブロック構成図である。
図示したとおり、情報処理装置は、アプリケーションプログラム１０１、ＣＰＵ１０２、フラッシュメモリ１０３、ＤＲＡＭ１０４、削除回数計数部１０５、およびＬＲＵ（Least Recently Used）リスト部か１０６ら構成されている。
アプリケーションプログラム１０１は、例えば、携帯電話のメーラであり、フラッシュメモリ１０３上にデータとして格納されている。
ＣＰＵ１０２は、フラッシュメモリ１０３からデータをリードしてＤＲＡＭ１０４にコピーしＤＲＡＭ１０４上のデータを実行する。
フラッシュメモリ１０３は、例えば、ＮＡＮＤ型フラッシュメモリであり、データを記憶し、ＣＰＵからのリード要求を受けると指定されたデータを転送する。
ＤＲＡＭ１０４は、フラッシュメモリ１０３のデータを一時的に記憶する。記憶したデータは不要になると削除されＤＲＡＭ１０４は再利用される。
削除回数計数部１０５は、ＤＲＡＭ１０４の再利用のためにＤＲＡＭ１０４上にあるフラッシュメモリ１０３からコピーされたデータを削除する際に、フラッシュメモリ１０３のアドレス毎に削除回数を計数する。
ＬＲＵリスト部１０６は、ＤＲＡＭ１０４上にあるフラッシュメモリ１０３からコピーされたデータについてＣＰＵ１０２からの参照頻度を記憶する。
【００１８】
図２は、本発明の実施の形態１における情報処理装置の動作を説明するフローチャートである。
まず、ＤＲＡＭの再利用が必要となると（ステップＳ１０１、ＹＥＳ）、削除回数計数部は、ＬＲＵリスト部１０６より参照頻度が低いものからＬＲＵ検索閾値に示された数だけデータを抽出する（ステップＳ１０２）。そして、削除回数計数部は、抽出したデータの中から削除回数が一番少ないものを選択する（ステップＳ１０３）。さらに、選択したデータの削除回数を＋１する（Ｓ１０４）。即ち、１を加算する。次に、選択したデータをＤＲＡＭから削除する（Ｓ１０５）。
ここで、ＤＲＡＭの再利用が必要でない場合（ステップＳ１０１、ＮＯ）、何もせずに処理を終了する。
例えば、本発明の実施の形態１における情報処理装置は、図１に示すように、削除回数計数部１０５は、フラッシュメモリのアドレス毎に削除回数を記憶し、ＬＲＵ検索閾値は３となっており、さらに、ＬＲＵリスト部１０５は、参照頻度が低い順にソートされたＬＲＵリストを持ち、リストの各要素にＤＲＡＭとフラッシュメモリのアドレスを対で記憶している場合、以下のように動作する。
まず、ＤＲＡＭの再利用が必要となったタイミングになると（ステップＳ１０１、ＹＥＳ）、削除回数計数部は、ＬＲＵリスト部１０６より参照頻度が低いものからＬＲＵ検索閾値に示された３個だけデータを抽出する（ステップＳ１０２）。これにより、ＬＲＵリスト番号１、２、３に記憶されたフラッシュメモリアドレスが抽出される。そして、削除回数計数部は、抽出したデータの中から削除回数が一番少ないものを選択する（ステップＳ１０３）。すなわち、削除回数が５０のフラッシュメモリアドレス０ｘ０１００００００が選択される。さらに、選択したデータの削除回数を＋１する（Ｓ１０４）。つまり、フラッシュメモリアドレス０ｘ０１００００００は削除回数が５１と記憶される。次に、選択したデータをＤＲＡＭから削除する（Ｓ１０５）。
次に、先行文献との効果の違いを説明する。今、異なるデータに対して異なる周期でリードが発生するリードパターンＡ、Ｂ、Ｃの３つがあり、リードパターンの周期はＡ＜Ｂ＜Ｃである。データは固定長でデータを格納可能なＲＡＭの容量は２つとする。
先行文献では、所定の非リード回数で表されるリード間隔がＡとＢの間の値であった場合、Ａは常にＲＡＭに残り続けＢとＣは常にＲＡＭから削除される。
本発明の実施の形態１の情報処理装置では、３つのデータに対してＤＲＡＭには２つ分の記憶領域があるため、プログラムからフラッシュメモリ上のデータをリードするためには、ＤＲＡＭ上に所望のデータがない場合、ＤＲＡＭ上にある２つのデータのうち、ＬＲＵリスト部が選択した方のデータを削除し、空いた領域に新しいデータをコピーする。ここで、説明を容易にするために、参照頻度がすべて同等とすると、ＬＲＵリスト部はＤＲＡＭ上にコピーした時刻が古いデータを選択する。
リードパターンＡの周期Ｔ１を１、リードパターンＢの周期Ｔ２を１．５、リードパターンＣの周期Ｔ３を４とすると、リードパターンＡにおいて１３回リードが発生する間に、リードパターンＢでは９回リードが発生し、リードパターンＣでは４回リードが発生する。このとき、先行文献ではフラッシュメモリに対して合計１４回のリードが発生するが、本発明の実施の形態１の情報処理装置では、図３に示す通り、フラッシュメモリに対して合計１２回のリードが発生し、先行文献よりリード回数を減らすことが可能となる。
以上のように本発明の実施の形態１の情報処理装置によれば、フラッシュメモリ１０３からデータがコピーされたＤＲＡＭ１０４上のデータを削除する際にＬＲＵリスト部１０６に記憶された参照頻度が小さいデータの中から削除回数の最も小さいデータを削除することができ、削除回数計数部１０５で計数された削除回数が小さいデータをアドレス毎に削除することで、リード回数が多くリード間隔が長いバースト的なリードパターンを持つデータに対しても、フラッシュメモリ１０３のリード回数を減らすことが可能となり、ビット化けが起こる可能性が低くなると共に、リフレッシュ動作が少なくなり消去回数が減ることでフラッシュメモリ１０３の寿命を延ばすことができる。
なお、本実施例ではデータの削除回数をフラッシュメモリのアドレス毎に計数しているが、フラッシュメモリの消去単位であるブロック毎に計数してもよい。
なお、削除回数計数部が計数する削除回数はＤＲＡＭに保存され、情報処理装置の動作を停止する場合は、ＤＲＡＭに保存された削除回数をフラッシュメモリに保存し、その後にフラッシュメモリへの電源供給を停止し、情報処理装置の動作を再開する場合は、フラッシュメモリへの電源供給を再開し、その後にフラッシュメモリに保存された削除回数をＤＲＡＭに保存してもよい。
【産業上の利用可能性】
【００１９】
本発明は、ＲＡＭから削除された回数が少ないデータを優先的にＲＡＭから削除することで、リード回数が多くリード間隔が長いバースト的なリードパターンを持つデータに対しても、フラッシュメモリのリード回数を減らすことが可能となり、ビット化けが起こる可能性が低くなると共に、リフレッシュ動作が少なくなり消去回数が減ることでフラッシュメモリの寿命を延ばすという効果を有するため、情報処理装置の記憶システムへの適用が可能である。
【符号の説明】
【００２０】
１００    情報処理装置
１０１    アプリケーションプログラム
１０２    ＣＰＵ
１０３    フラッシュメモリ（第１のメモリデバイス、第３のメモリデバイス）
１０４    ＤＲＡＭ（第２のメモリデバイス、第４のメモリデバイス）
１０５    削除回数計数部
１０６    ＬＲＵリスト部
【図１】
2011203927.tif 000003
【図２】
2011203927.tif 000004
【図３】
2011203927.tif 000005