(57)【要約】      （修正有）【課題】  電子機器の製品保障期間内における不揮発性メモリの書き換え回数を超えないことを保証することが可能な構成とすると共に、不揮発メモリのデータの転送に際し、ＣＰＵへの負担を軽減する。【解決手段】  ＣＰＵ１と、書き換え回数制限が設定された不揮発性メモリ４と、キャッシュメモリとしてのＲＡＭ３と、不揮発性メモリ４とＲＡＭ３との間でのデータの転送を制御するコントローラ２とを備える。コントローラ２はＲＡＭ３の特定領域のデータを一定時間間隔で不揮発性メモリ４に書き戻すと共に、電源投入時に不揮発性メモリ４の特定領域のデータをＲＡＭ３に自動的にロードする。【選択図】  図２
2006127245.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵと、書き換え回数制限が設定された不揮発性メモリと、キャッシュメモリとしてのＲＡＭと、前記不揮発性メモリと前記ＲＡＭとの間でのデータの転送を制御するコントローラとを備え、前記コントローラは前記ＲＡＭの特定領域のデータを一定時間間隔で前記不揮発性メモリに書き戻すと共に、電源投入時に前記不揮発性メモリの特定領域のデータを前記ＲＡＭに自動的にロードすることを特徴とする電子機器システム。
【請求項２】
前記コントローラは、前記書き戻し時間間隔の設定が可能なレジスタと、その設定値に基づいて定期的に割り込みを発生するインターバルタイマと、前記インターバルタイマの割り込み発生時に前記ＲＡＭの特定領域のデータを前記不揮発性メモリに書き戻すデータ転送コントロール部とを有していることを特徴とする請求項１記載の電子機器システム。
【請求項３】
前記コントローラは、前記書き戻し時間間隔の設定が可能なレジスタと、その設定値に基づいて定期的に割り込みを発生するインターバルタイマと、前記インターバルタイマの割り込み発生によりＲＡＭの特定領域のデータを前記不揮発性メモリに書き戻すＣＰＵインターフェースとを備えていることを特徴とする請求項１記載の電子機器システム。
【請求項４】
前記不揮発性メモリは、フラッシュＲＯＭ内蔵のメモリカードであることを特徴とする請求項１記載の電子機器システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ転送機能を備えた電子機器システムに関する。
【背景技術】
【０００２】
コンピュータ等の電子機器では、ＦＬＡＳＨＲＯＭ内蔵のメモリカード（以下、フラッシュカードと呼ぶ）やＨＤＤ（ハードディスク）、その他の不揮発性メモリの大容量化に伴い、様々なデータをＦＬＡＳＨカードに保存、蓄積することが可能となっている。しかし、不揮発性メモリには書き込み回数制限があり、制限回数を超えるライトアクセスがあるとデバイスを破壊するという問題がある。この場合、不揮発メモリのデータをキャッシュメモリとしてのＲＡＭに転送して書き込む処理をＣＰＵ（中央処理装置）が行う場合には、ＣＰＵに負担がかかり、処理速度等への悪影響が発生する。
【０００３】
この解決策として、ＤＲＡＭなどの不揮発メモリをキャッシュとして使用し、データの変更量に応じてキャッシュのデータを不揮発性メモリに書き戻すという方法が考えられるが、システムの使用環境や負荷によってキャッシュデータの更新頻度が異なるため、電子機器の製品保障期間内に不揮発性メモリの書き換え回数制限を超えないことを定量的に保証することは難しいものとなっている。
【０００４】
特許文献１には、ＣＰＵと不揮発性メモリとの間にＲＡＭ及びキャッシュコントローラを配置し、低速大容量の不揮発性メモリのアクセス速度の問題点を解決するシステムが記載されている。しかしながら、このシステムは、不揮発性メモリの書き換え回数の制約に対して何らの解決策を提示するものではない。
【０００５】
特許文献２には、キャッシュを利用することによりＨＤＤをブートデバイスとして用いるシステムが記載されているが、この特許文献２も不揮発性メモリの書き換え回数の制約に対して何らの解決策を提示するものとはなっていない。
【特許文献１】特開２００２−３６６４２９号公報
【特許文献２】特開平９−１１４６７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、以上のような観点からなされたものであり、電子機器の製品保障期間内における不揮発性メモリの書き換え回数を超えないことを保証することが可能な電子機器システムを提供することを目的とする。また、本発明は、不揮発メモリのデータの転送に際し、ＣＰＵへの負担を軽減することが可能な電子機器システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
請求項１記載の発明の電子機器システムは、ＣＰＵと、書き換え回数制限が設定された不揮発性メモリと、キャッシュメモリとしてのＲＡＭと、不揮発性メモリとＲＡＭとの間でのデータの転送を制御するコントローラとを備え、前記コントローラはＲＡＭの特定領域のデータを一定時間間隔で不揮発性メモリに書き戻すと共に、電源投入時に不揮発性メモリの特定領域のデータをＲＡＭに自動的にロードすることを特徴とする。
【０００８】
請求項２記載の発明は、請求項１記載の電子機器システムであって、前記コントローラは、前記書き戻し時間間隔の設定が可能なレジスタと、その設定値に基づいて定期的に割り込みを発生するインターバルタイマと、インターバルタイマの割り込み発生時にＲＡＭの特定領域のデータを不揮発性メモリに書き戻すデータ転送コントロール部とを有していることを特徴とする。
【０００９】
請求項３記載の発明は、請求項１記載の電子機器システムであって、前記コントローラは、前記書き戻し時間間隔の設定が可能なレジスタと、その設定値に基づいて定期的に割り込みを発生するインターバルタイマと、インターバルタイマの割り込み発生によりＲＡＭの特定領域のデータを不揮発性メモリに書き戻すＣＰＵインターフェースとを備えていることを特徴とする。
【００１０】
請求項４記載の発明は、請求項１記載の電子機器システムであって、前記不揮発性メモリは、フラッシュＲＯＭ内蔵のメモリカードであることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、ＲＡＭの特定領域のデータを一定時間間隔で不揮発性メモリに書き戻すため、電子機器の製品寿命と不揮発性メモリの書き換え可能回数に基づいて不揮発性メモリへの書き込み時間間隔を決定することができ、システムの信頼性を保証することができる。
【００１２】
また、本発明によれば、電源投入時に不揮発性メモリの特定領域のデータをＲＡＭに自動的にロードするため、ＣＰＵが不揮発性メモリを意識する必要がなくシステムの利便性を高めることができる。
【発明を実施するための最良の形態】
【００１３】
図１は、本発明の一実施の形態におけるシステムのブロック図、図２はその詳細を示すブロック図、図３はメモリ間でのデータ転送を示す概念図、図４はデータ転送のシーケンスを示すタイミングチャートである。
【００１４】
この実施の形態の電子機器システムは、図１に示すように、ＣＰＵ（中央処理装置）１と、コントローラ２と、ＲＡＭ３と、不揮発性メモリ４とを備えている。
【００１５】
不揮発性メモリ４は、ＦＬＡＳＨＲＯＭ、ＳＤカードなどの大容量のメモリであり、書き換え回数制限が設定されている。ＲＡＭは書き換え回数制限が設定されていない不揮発性メモリであり、キャッシュメモリとして用いられる。ＲＡＭはメインメモリとしてのワーク領域を有していても良い。コントローラ２はＣＰＵ１からのＲＡＭアクセス制御、ＲＡＭ３のデータと不揮発性メモリ４のデータの整合性制御を行う。また、コントローラは、ＣＰＵ  Ｉ／Ｆ、ＲＡＭ  Ｉ／Ｆ、不揮発性メモリＩ／Ｆ、ＤＭＡＣ（データ転送コントロール部）、書き戻し時間間隔設定用の記憶部を有している（図２参照）。
【００１６】
図２に示すようにコントローラ２は、ＣＰＵＩ／Ｆ（ＣＰＵインターフェース）２５、ＲＡＭＩ／Ｆ（ＲＡＭインターフェース）２６、ＲＯＭＩ／Ｆ（ＲＯＭＩ／Ｆインターフェース）２７、ＤＭＡＣ（データ転送コントロール部）２８、書き戻し時間間隔設定レジスタ２９及びインターバルタイマ２１を備えている。
【００１７】
ＣＰＵＩ／Ｆ２５は、ＣＰＵとのインターフェースであり、アドレスにより、ＲＡＭ３、不揮発性メモリ４、内部レジスタ２９へのアクセス先をセレクトする。この場合、不揮発性メモリ４のデータ書き換え領域４２へのアクセスは、バスエラーとしてＣＰＵ１に通知する。
【００１８】
ＲＡＭＩ／Ｆ２６は、ＲＡＭ３とのインターフェースであり、ＣＰＵ１からのアクセスとＤＭＡＣ２８からのアクセスを受け付ける。ＲＡＭＩ／Ｆ２６は、ＣＰＵ１とＤＭＡＣ２８とのアクセスが競合した場合、ＣＰＵ１へのアクセスを優先する。ＲＯＭＩ／Ｆ２７は、不揮発性メモリ４とのインターフェースである。
【００１９】
ＤＭＡＣ２８は、ＲＡＭ３から不揮発性メモリ４へのＤＭＡ転送及び不揮発性メモリ４からＲＡＭ３へのＤＭＡ転送を行う。このＤＭＡＣ２８は、電源投入時、自動的に不揮発性メモリ４の特定データ（データ書き換え領域４２のデータ）をＲＡＭ３へ転送する。また、インターバルタイマ２１からの割り込みがあると、自動的にＲＡＭ３上のキャッシュ領域３２のデータを不揮発性メモリ４のデータ書き換え領域４２へ転送する。
【００２０】
書き戻し時間間隔設定レジスタ２９は、ＤＭＡＣ２８がＲＡＭ３上のキャッシュ領域３２のデータを不揮発性メモリ４のデータ書き換え領域４２に転送する時間間隔を設定するレジスタである。
【００２１】
インターバルタイマ２１は、書き戻し時間間隔設定レジスタ２９に０以外の値が設定されているとき、設定された時間ごとにＤＭＡＣ２８に割り込みを発生する。
【００２２】
以上のように、コントローラ２はＤＭＡＣ２８を内蔵しており、電源投入時、及びインターバルタイマ２１からの割り込み発生時に、自動的にＤＭＡ転送を行う。この場合、コントローラ２がＤＭＡＣ２８を内蔵せず、電源投入時及びインターバルタイマ２１からの割り込みをＣＰＵ１が受付け、ＣＰＵ１によりＩＯ処理でデータ転送を行う構成であっても良い。
【００２３】
図３に示すように、ＲＡＭ３は、実行プログラムを格納するプログラム領域３１と、プログラム実行に必要なワーク領域３３と、不揮発性メモリ４のキャッシュ領域３２とを備えている。また、不揮発性メモリ４は、読み出し専用のリードオンリ領域４１、４３と、書き換えられるデータを格納するデータ書き換え領域４２とを備えている。この場合、ＲＡＭ３のキャッシュ領域３２は、不揮発性メモリ４のデータ書き換え領域４２と１対１で対応している。また、コントローラ２は、ＲＡＭ３のキャッシュ領域３１のデータを一定の時間間隔で不揮発性メモリ４のデータ書き換え領域４２にデータを書き戻す。
【００２４】
この実施の形態において、ＣＰＵ１は図１の矢印Ａで示すように、ＲＡＭ３の全領域のデータを読み込み及び書き込みすることができる。また、ＣＰＵ１は矢印Ｃで示すように、ＣＰＵ１は不揮発性メモリ４のデータ書き換え領域４２のデータをアクセスすることができない。また、ＣＰＵ１は不揮発性メモリ４のリードオンリ領域４１のデータを読み込むことができる。
【００２５】
コントローラ２は図１の矢印Ｂで示すように、不揮発性メモリ４とＲＡＭ３との間のデータ転送の制御を行う。また、コントローラ２は図４に示すように、電源投入時に不揮発性メモリ４のデータ書き換え可能領域４１のデータをＲＡＭ３のキャッシュ領域３２にロードすると共に、ＲＡＭ３のキャッシュ領域３２のデータを不揮発性メモリ４のデータ書き換え領域４２に一定時間間隔で書き戻す。
【００２６】
図４のタイミングチャートによって動作シーケンスを説明する。
【００２７】
（１）初期シーケンス
システムの電源投入時において、コントローラ２は、不揮発性メモリ４のデータ書き換え領域４２のデータをＲＡＭ３のキャッシュ領域３２に転送してロードする。このようにコントローラ２が不揮発性メモリ４からＲＡＭ３へのデータのロードを電源投入時に自動的に行うことにより、ＣＰＵ１は不揮発性メモリ４を意識する必要がなく、システムの利便性を高めることができる。なお、データの転送は、ＣＰＵ１によりデータのコピーを行ってもよいし、コントローラ２がＤＭＡ転送により自動で行ってもよい。
【００２８】
初期シーケンスにおいては、ＣＰＵ１により、コントローラ２内部の時間間隔設定レジスタ２９に対しデータ書き戻し間隔が設定される。この時間間隔設定レジスタ２９への設定は、たとえば以下のように決定される。すなわち、
書き戻し間隔（秒）＞電子機器の保証期間（秒）÷不揮発性メモリの書き換え可能回数
【００２９】
例えば、電子機器の保証期間が５年の場合は、５×３６５×２４×６０×６０＝１５７６８００００（秒）となり、不揮発性メモリ４の書き換え可能回数が１０万回であるとすると、１５７６８００００÷１０００００＝１５７６．８（秒）となる。従って、時間間隔設定レジスタ２９に対しては、１５７６．８（秒）以上に設定すればよい。
【００３０】
この場合、不揮発性メモリ４がＦＬＡＳＨチップを内蔵したメモリカードの場合には、メモリカード内部の制御によりデバイスの書き換え回数制限が緩和される場合がある。また、データ書き換え領域４２に対して、メモリカードの空き領域が数倍ある場合は、メモリカード内部でＦＬＡＳＨチップの物理領域への書き込みを分散させる機能を有している場合がある。データ書き換え領域４２に対して、メモリカードの空き領域が１０倍ある場合は、メモリカード内の制御により１００万回の書き換え回数が保証されるため、時間間隔設定レジスタ２９には、１５７．６８秒以上を設定すればよい。また、設定された時間間隔内にシステムの電源が断たれた場合は、ＲＡＭ３上のキャッシュ領域３２のデータは保存されないため、時間間隔の設定値はシステムとしてデータ保証を考慮して決定される。
【００３１】
（２）リードシーケンス
不揮発性メモリ４のデータ書き換え領域４２へのリードシーケンスを説明すると、ＣＰＵ１はＲＡＭ３のキャッシュ領域３２にリードするだけであり、ＣＰＵ１は不揮発性メモリ４へのライトアクセスは意識しない。これに対し、初期化シーケンスで、不揮発性メモリ４のデータ書き換え領域４２のデータは、ＲＡＭ３のキャッシュ領域３２へ転送されているので、ＲＡＭ３のキャッシュ領域３２のリードを行うことによりデータを読み出すことができる。ＲＡＭ３のキャッシュ領域３２への書き換えが行われた場合であっても、ＲＡＭ３のキャッシュ領域３２上にあるデータが常に最新である。
【００３２】
（３）ライトシーケンス
不揮発性メモリ４のデータ書き換え領域４２へのライトアクセスを説明すると、ＣＰＵ１はＲＡＭ３のキャッシュ領域３２のデータを書き換える（ライトアクセス）。これを必要に応じて書き換えを複数回実行する。上述した書き戻し時間間隔設定に従ってインターバルタイマ２１からの割り込みを受け、コントローラ２は定期的にキャッシュ領域３２のデータを不揮発性メモリ４のデータ書き換え領域４２へ書き戻す。このように一定時間間隔でＲＡＭ３上のデータを不揮発性メモリ４に自動的に書き戻されることにより、ＣＰＵ１は不揮発性メモリ４を意識する必要がなくシステムの利便性が高まる。
【００３３】
上述した書き戻しは、コントローラ２が自動で行っても良いが、インターバルタイマ２１からの割り込みをＣＰＵＩ／Ｆ２５が受け付けてＣＰＵ介在で処理しても良い。この場合には、コントローラ２の構成を簡単にすることができる。
【図面の簡単な説明】
【００３４】
【図１】本発明の一実施の形態における電子機器システムのブロック図である。
【図２】図１の詳細を示すブロック図である。
【図３】ＲＡＭと不揮発性メモリとの間でのデータ転送を示す概念図である。
【図４】動作シーケンスを示すタイミングチャートである。
【符号の説明】
【００３５】
１    ＣＰＵ
２    コントローラ
３    ＲＡＭ
４    不揮発性メモリ
２１    インターバルタイマ
２５    ＣＰＵＩ／Ｆ
２６    ＲＡＭＩ／Ｆ
２７    ＲＯＭＩ／Ｆ
２８    ＤＭＡＣ
２９    書き戻し時間間隔設定レジスタ
３２    キャッシュ領域
４２    データ書き換え領域
【図１】
2006127245.tif 000003
【図２】
2006127245.tif 000004
【図３】
2006127245.tif 000005
【図４】
2006127245.tif 000006