(57)【要約】【課題】情報処理装置に搭載されたＳＳＤが寿命を迎えたとしても情報処理装置の動作を可能にするための技術を提供する。【解決手段】ディスクコントローラは、ＳＳＤの寿命に関連するパラメータ値をＳＳＤから取得し、取得したパラメータ値に基づいて、ＳＳＤの残り寿命を確認する（Ｓ１０１）。ディスクコントローラは、ＳＳＤの残り寿命が閾値Ｔｈ２を下回ると（Ｓ１０４で「ＹＥＳ」）、ＳＳＤに格納されているデータをＨＤＤへコピーする（Ｓ１０５）。また、ディスクコントローラは、ＳＳＤの残り寿命が閾値Ｔｈ１（＜Ｔｈ２）を下回ると（Ｓ１０２で「ＹＥＳ」）、ＳＳＤに格納されているデータをＨＤＤへコピーするとともに、ＳＳＤの動作を停止させる（Ｓ１０３）。【選択図】図５
2018063499.tif 000002
【特許請求の範囲】
【請求項１】
第１記憶装置と、
前記第１記憶装置よりもアクセス速度が高速な第２記憶装置と、
前記第２記憶装置の寿命に関連するパラメータ値を前記第２記憶装置から取得する取得手段と、
前記取得手段によって取得された前記パラメータ値に基づいて、前記第２記憶装置の残り寿命を判定する判定手段と、
前記判定手段による前記残り寿命の判定結果に従って、前記第２記憶装置に格納されているデータが前記第１記憶装置へバックアップされるように、前記第１記憶装置及び前記第２記憶装置を制御する制御手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記制御手段は、前記残り寿命が第１閾値を下回ると、前記第２記憶装置に格納されているデータを前記第１記憶装置へバックアップさせる
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記制御手段は、前記残り寿命が前記第１閾値を下回ると、更に、前記第２記憶装置への電力供給を停止させる
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記制御手段は、前記残り寿命が前記第１閾値を下回っていなければ、アクセス頻度が低い種類として定められたデータである低頻度データを前記第１記憶装置へ格納し、アクセス頻度が高い種類として定められた高頻度データを前記第２記憶装置へ格納するよう、記憶装置へのデータの書き込み制御を行う
ことを特徴とする請求項２または３に記載の情報処理装置。
【請求項５】
前記制御手段は、前記残り寿命が前記第１閾値を下回ると、前記低頻度データ及び前記高頻度データの両方を前記第１記憶装置へ格納するよう、前記書き込み制御を行う
ことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記低頻度データは、前記第１記憶装置の第１記憶領域へ格納され、
前記第２記憶装置から前記第１記憶装置へバックアップされるデータは、前記第１記憶装置の前記第１記憶領域とは異なる第２記憶領域へ格納される
ことを特徴とする請求項４または５に記載の情報処理装置。
【請求項７】
前記制御手段は、前記残り寿命が前記第１閾値を下回ると、前記低頻度データを前記第１記憶領域へ格納し、前記高頻度データを前記第２記憶領域へ格納するよう、前記書き込み制御を行う
ことを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記制御手段は、前記残り寿命が前記第１閾値より高い第２閾値を下回ると、前記第２記憶装置に格納されているデータを前記第１記憶装置へバックアップさせるとともに、前記第２記憶装置への電力供給を継続する
ことを特徴とする請求項２から７のいずれか１項に記載の情報処理装置。
【請求項９】
前記パラメータ値は、前記第２記憶装置にそれまでに書き込まれたデータ量を示し、
前記判定手段は、前記パラメータ値が示すデータ量と、前記第２記憶装置が寿命に達するまでに書き込み可能な総データ量とに基づいて、前記残り寿命を判定する
ことを特徴とする請求項１から８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記判定手段は、前記総データ量に対する、前記第２記憶装置が寿命に達するまでに書き込み可能な残りのデータ量の割合を、前記残り寿命として判定する
ことを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
前記高頻度データは、前記情報処理装置でジョブが実行されるごとに使用されるデータ、及び前記情報処理装置の設定データを含む
ことを特徴とする請求項４から７のいずれか１項に記載の情報処理装置。
【請求項１２】
前記取得手段は、前記第２記憶装置のＳＭＡＲＴ情報から前記パラメータ値を取得する
ことを特徴とする請求項１から１１のいずれか１項に記載の情報処理装置。
【請求項１３】
前記第１記憶装置はＨＤＤであり、前記第２記憶装置はＳＳＤである
ことを特徴とする請求項１から１２のいずれか１項に記載の情報処理装置。
【請求項１４】
第１記憶装置と、前記第１記憶装置よりもアクセス速度が高速な第２記憶装置と、を備える情報処理装置の制御方法であって、
前記第２記憶装置の寿命に関連するパラメータ値を前記第２記憶装置から取得する取得工程と、
前記取得工程で取得された前記パラメータ値に基づいて、前記第２記憶装置の残り寿命を判定する判定工程と、
前記判定工程における前記残り寿命の判定結果に従って、前記第２記憶装置に格納されているデータが前記第１記憶装置へバックアップされるように、前記第１記憶装置及び前記第２記憶装置を制御する制御工程と、
を含むことを特徴とする情報処理装置の制御方法。
【請求項１５】
請求項１４に記載の情報処理装置の制御方法の各工程をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びその制御方法、並びにプログラムに関するものである。
【背景技術】
【０００２】
プリンタやＭＦＰ等の画像形成装置は、画像データや設定データ等のデータを格納するために二次記憶装置を備えている。代表的な二次記憶装置はＨＤＤ（ハードディスクドライブ）である。現在、画像形成装置の高性能化の実現のために、アクセス速度が高速なＳＳＤ（ソリッドステートドライブ）を二次記憶装置として画像形成装置に搭載することが検討されている。一般に、ＳＳＤは、ＨＤＤよりも記憶容量が小さく、かつ、ＨＤＤよりも高価である。このため、このようなＳＳＤの欠点を補いながら高性能化を実現するために、画像形成装置においてＳＳＤとＨＤＤとを併用することが検討されている。
【０００３】
特許文献１には、ＳＳＤとＨＤＤとを併用するための技術が提案されている。特許文献１では、アクセス速度が低速な低速記憶媒体（ＨＤＤ）とアクセス速度が高速な高速記憶媒体（ＳＳＤ）との間で、データへのアクセス頻度に基づいて、低速記憶媒体と高速記憶媒体との間でデータを移動させている。具体的には、システムが扱うデータのうち、アクセス頻度が高いデータを高速記憶媒体に格納し、残りのデータを低速記憶媒体に格納することで、システム全体の性能を改善している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−２４３１１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
一般に、ＳＳＤにはデータを記録するセルの書き換え回数に制限がある。このため、上述のようにデータへのアクセス頻度に基づいてＳＳＤとＨＤＤとを併用した場合に、ＳＳＤへのアクセスが頻繁に行われると、ＳＳＤの寿命が短くなりうる（ＳＳＤが故障するまでの期間が短くなりうる）。また、ＳＳＤの記録方式としてＳＬＣ（シングルレベルセル）やＭＬＣ（マルチレベルセル）に代えてＴＬＣ（トリプルレベルセル）が用いられた場合、ＳＳＤの寿命が大幅に短くなりうる。このようにＳＳＤの寿命が短くなると、ＳＳＤが搭載された画像形成装置等の情報処理装置よりも先にＳＳＤが寿命を迎えうる。
【０００６】
本発明は、上述の問題に鑑みてなされたものである。本発明は、情報処理装置に搭載されたＳＳＤが寿命を迎えたとしても情報処理装置の動作を可能にするための技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、例えば、情報処理装置として実現できる。本発明の一態様に係る情報処理装置は、第１記憶装置と、前記第１記憶装置よりもアクセス速度が高速な第２記憶装置と、前記第２記憶装置の寿命に関連するパラメータ値を前記第２記憶装置から取得する取得手段と、前記取得手段によって取得された前記パラメータ値に基づいて、前記第２記憶装置の残り寿命を判定する判定手段と、前記判定手段による前記残り寿命の判定結果に従って、前記第２記憶装置に格納されているデータが前記第１記憶装置へバックアップされるように、前記第１記憶装置及び前記第２記憶装置を制御する制御手段と、を備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、情報処理装置に搭載されたＳＳＤが寿命を迎えたとしても情報処理装置の動作が可能になる。
【図面の簡単な説明】
【０００９】
【図１】画像形成装置の構成例を示すブロック図
【図２】コントローラの構成例を示すブロック図
【図３】ＨＤＤ及びＳＳＤのアクセス制御のための構成を示す図
【図４】ＮＡＮＤ型フラッシュメモリの特性の概要を示す図
【図５】ＨＤＤ及びＳＳＤの制御手順の例を示すフローチャート
【図６】ディスクコントローラによる制御例を示す図
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための形態について図面を用いて説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１１】
［第１実施形態］
第１実施形態では、情報処理装置の一例として、印刷機能、複写機能、画像送信機能、画像保存機能等の多数の機能を有する画像形成装置（画像処理装置）である複合機（ＭＦＰ）について説明する。なお、本実施形態は、ＭＦＰだけでなく、印刷装置（プリンタ）、複写機、ファクシミリ装置、ＰＣ等の情報処理装置にも同様に適用可能である。
【００１２】
＜ＭＦＰ＞
図１は、本実施形態に係るＭＦＰ１の構成例を示すブロック図である。ＭＦＰ１は、スキャナ装置２、コントローラ３、プリンタ装置４、操作部５、ＨＤＤ（ハードディスクドライブ）６、及びＦＡＸ（ファクシミリ）装置７を備える。スキャナ装置２は、原稿から光学的に画像を読み取って当該画像をデジタル画像に変換し、画像データとして出力する。プリンタ装置４は、画像データに基づいてシートに画像を印刷（出力）する。なお、シートは、記録紙、記録材、記録媒体、用紙、転写材、転写紙等と称されてもよい。操作部５は、ＭＦＰ１に対するユーザの操作を受け付ける。本実施形態のＨＤＤ６は、比較的大容量かつ不揮発性の記憶装置である。ＨＤＤ６には画像データ、及びメインＣＰＵ２０１によって実行される制御プログラムやアプリケーションプログラム等が格納される。ＦＡＸ装置７は、電話回線を介したＦＡＸ送信により、指定された宛先に画像データを送信する。
【００１３】
コントローラ３は、コントローラ３に接続された各デバイスの動作を制御することで、ＭＦＰ１における種々のジョブの実行を実現する。また、コントローラ３は、ＬＡＮ８を介して、外部のホストコンピュータ（ＰＣ）９に対して画像データを送信（出力）し、また、ＰＣ９から画像データを受信することで画像データの入力を受け付ける。更に、コントローラ３は、ＰＣ９から、ＬＡＮ８を介して指示及びジョブの入力を受け付けることも可能である。
【００１４】
スキャナ装置２は、原稿給紙（ＤＦ）ユニット２１及びスキャナユニット２２を備える。ＤＦユニット２１は、原稿束から原稿を１枚ずつスキャナユニット２２へ給紙する。スキャナユニット２２は、給紙された原稿の画像を光学的に読み取ってデジタル画像に変換し、画像データとしてコントローラ３に送信（出力）する。プリンタ装置４は、マーキングユニット４１、給紙ユニット４２及び排紙ユニット４３を備える。給紙ユニット４２は、シートを１枚ずつマーキングユニット４１へ給紙する。マーキングユニット４１は、給紙されたシートに対して画像を印刷し、印刷後のシートを排紙ユニット４３へ排紙する。操作部５は、操作ボタン、及びタッチパネル機能を有する表示パネルを備え、ユーザがＭＦＰ１にコピー等の動作を指示するため、及びＭＦＰ１に関する各種情報をユーザに提示するために使用される。
【００１５】
ＭＦＰ１は、印刷機能、複写（コピー）機能、画像送信機能、画像保存機能等の多数の機能を有する。
・印刷機能は、ＰＣ９等の外部装置から受信した、例えばページ記述言語（ＰＤＬ）で記述された印刷データを解析して、印刷用の画像データに変換し、当該画像データに基づいてプリンタ装置４でシートに画像を印刷する機能である。
・複写機能は、スキャナ装置２で原稿の画像を読み取って得られた画像データをＨＤＤ６に格納するとともに、当該画像データに基づいてプリンタ装置４でシートに画像を印刷する機能である。
・画像送信機能は、スキャナ装置２で原稿の画像を読み取って得られた画像データを、ＦＡＸ装置７によって、またはＬＡＮ８を介して外部装置へ送信する機能である。
・画像保存機能は、スキャナ装置２から出力される画像データをＨＤＤ６に格納することで、当該画像データを保存する機能である。ＨＤＤ６に格納された画像データは、必要に応じて送信または印刷に用いることが可能である。
【００１６】
ＭＦＰ１は、上述のような機能を利用して、複写ジョブ、送信ジョブ、印刷ジョブ等の種々のジョブを実行可能である。なお、本実施形態のＭＦＰ１は、各機能における画像データの格納先として、ＨＤＤ６だけでなく、ＳＳＤ２０７（図２）を使用することも可能である。
【００１７】
＜コントローラ＞
図２は、コントローラ３の構成例を示すブロック図である。コントローラ３は、メインシステム（メインボード）２００及びサブシステム（サブボード）２２０によって構成される。メインシステム２００は、ＭＦＰ１全体を制御するためのＣＰＵシステムである。サブシステム２２０は、メインシステム２００に接続され、画像処理用ハードウェアで構成されたＣＰＵシステムである。メインシステム２００には、ＵＳＢメモリ２０９、操作部５及びＨＤＤ６等が接続される。サブシステム２２０には、スキャナ装置２、プリンタ装置４、及びＦＡＸ装置７等が接続される。
【００１８】
メインシステム２００は、メインＣＰＵ２０１、ブートＲＯＭ２０２、メモリ２０３、バスコントローラ２０４、不揮発性メモリ２０５、ディスクコントローラ２０６、及びＳＳＤ（ソリッドステートドライブ）２０７を備える。メインシステム２００は、更に、ＵＳＢコントローラ２０８、ネットワークＩ／Ｆ（インタフェース）２１０、ＲＴＣ２１１、及び電源制御部２１２を備える。
【００１９】
メインＣＰＵ２０１は、メインシステム２００全体を制御するとともにＭＦＰ１全体を制御する。ブートＲＯＭ２０２には、ＭＦＰ１の起動時にメインＣＰＵ２０１によって実行されるブートプログラムが格納される。メモリ２０３は、メインＣＰＵ２０１のワークメモリとして使用される。バスコントローラ２０４は、外部バス（本実施形態ではサブシステム２２０側のバス）とのブリッジ機能を有する。不揮発性メモリ２０５には、メインＣＰＵ２０１によって使用される設定データ等が格納される。ＲＴＣ２１１は、時計機能を有する。
【００２０】
ディスクコントローラ２０６は、ＭＦＰ１が備える二次記憶装置（ストレージデバイス）に相当するＨＤＤ６及びＳＳＤ２０７を制御する。ＳＳＤ２０７は、半導体デバイスであるＮＡＮＤ型フラッシュメモリで構成された不揮発性の記憶装置であり、データを格納可能な記憶容量はＨＤＤ６よりも小さいものの、ＨＤＤ６よりも高速なランダムアクセスが可能である。即ち、ＳＳＤ２０７についてのデータの書き込み速度及び読み出し速度（アクセス速度）はＨＤＤ６よりも高い。本実施形態では、ＨＤＤ６は、第１記憶装置の一例であり、ＳＳＤ２０７は、ＨＤＤ６よりもアクセス速度が高速な第２記憶装置の一例である。
【００２１】
電源制御部２１２は、ＭＦＰ１の電源部１０を制御する。電源部１０は、ＭＦＰ１内の各デバイスへ電力を供給する電源である。ディスクコントローラ２０６は、電源制御部２１２を制御することで、ＭＦＰ１の電源部１０からＨＤＤ６及びＳＳＤ２０７への電力の供給を制御できる。ＵＳＢコントローラ２０８は、ＵＳＢメモリ２０９等のＵＳＢデバイスを制御する。ＵＳＢデバイスはＭＦＰ１に対して着脱可能であってもよい。
【００２２】
サブシステム２２０は、サブＣＰＵ２２１、メモリ２２３、バスコントローラ２２４、不揮発性メモリ２２５、画像処理プロセッサ２２６、及びエンジンコントローラ２２７，２２８を備える。サブＣＰＵ２２１は、メインＣＰＵ２０１の制御下で、サブシステム２２０全体を制御する。メモリ２２３は、サブＣＰＵ２２１のワークメモリとして使用される。バスコントローラ２２４は、外部バス（本実施形態ではメインシステム２００側のバス）とのブリッジ機能を有する。不揮発性メモリ２２５には、サブＣＰＵ２２１によって使用される設定データ等が格納される。
【００２３】
画像処理プロセッサ２２６は、プリンタ装置４へ出力される画像データ、及びスキャナ装置２から入力される画像データに対する画像処理を行う。エンジンコントローラ２２７は、画像処理プロセッサ２２６とプリンタ装置４との間で画像データの受け渡しを行うとともに、サブＣＰＵ２２１からの指示に従ってプリンタ装置４を制御する。エンジンコントローラ２２８は、画像処理プロセッサ２２６とスキャナ装置２との間で画像データの受け渡しを行うとともに、サブＣＰＵ２２１からの指示に従ってスキャナ装置２を制御する。ＦＡＸ装置７は、サブＣＰＵ２２１によって直接制御される。なお、説明の簡略化のために図２には図示していないが、メインＣＰＵ２０１、サブＣＰＵ２２１等には、チップセット、バスブリッジ、クロックジェネレータ等の、ＣＰＵ周辺ハードウェアが多数含まれている。
【００２４】
次に、コントローラ３の動作の一例として、複写機能を実現するための動作について説明する。ＭＦＰ１のユーザが操作部５を操作して画像の複写を指示すると、メインＣＰＵ２０１は、サブＣＰＵ２２１を介してスキャナ装置２へ読取指示を送信する。スキャナ装置２は、受信した指示に従って、原稿の画像を読み取って画像データを生成し、生成した画像データを、エンジンコントローラ２２８を介して画像処理プロセッサ２２６へ入力する。画像処理プロセッサ２２６は、サブＣＰＵ２２１を介してメモリ２２３へ、入力された画像データのＤＭＡ転送を行うことで、メモリ２２３に画像データを一時的に保存する。メインＣＰＵ２０１は、サブＣＰＵ２２１からの通知によって、一定量の画像データまたは複写対象の全原稿に対応する画像データがメモリ２２３に格納されたことを確認すると、サブＣＰＵ２２１を介してプリンタ装置４へ印刷指示を送信する。
【００２５】
サブＣＰＵ２２１は、メモリ２２３の記憶領域における画像データの格納位置を画像処理プロセッサ２２６に知らせる。これにより、プリンタ装置４から出力される同期信号に従って、メモリ２２３上の画像データが画像処理プロセッサ２２６及びエンジンコントローラ２２７を介してプリンタ装置４へ転送される。プリンタ装置４は、受信した印刷指示に従って、メモリ２２３から転送された画像データに基づいてシートに画像を印刷する。なお、メモリ２２３に一時的に保存された画像データはＨＤＤ６に保存されてもよい。これにより、ＨＤＤ６に保存された画像データを利用して、プリンタ装置４による再印刷が実現されてもよい。
【００２６】
＜ディスクコントローラ＞
図３は、ＭＦＰ１においてディスクコントローラ２０６によって実行される、ＨＤＤ６及びＳＳＤ２０７のアクセス制御のための構成を示す図であり、当該アクセス制御に関連する機能ブロックを示している。ここでは、図３を参照して、ＨＤＤ６及びＳＳＤ２０７のアクセス制御を行うディスクコントローラ２０６の動作の概要について説明する。
【００２７】
ＭＦＰ１では、上述のような種々のジョブが実行される際に、ストレージデバイス（ＨＤＤ６及びＳＳＤ２０７）に対するライト（Ｗｒｉｔｅ）アクセスまたはリード（Ｒｅａｄ）アクセスが発生する。メインＣＰＵ２０１は、ストレージデバイスへのライトアクセス（即ち、ストレージデバイスへのデータの書き込み要求）が発生すると、ライトコマンドをディスクコントローラ２０６に送信する。また、メインＣＰＵ２０１は、ストレージデバイスへのリードアクセス（即ち、ストレージデバイスに格納されているデータの読み出し要求）が発生すると、リードコマンドをディスクコントローラ２０６に送信する。ディスクコントローラ２０６は、メインＣＰＵ２０１から受信したコマンドに従って、ストレージデバイス（ＨＤＤ６及びＳＳＤ２０７）に対するデータのリードまたはライトを制御する。
【００２８】
ディスクコントローラ２０６は、ＨＤＤ６に格納されているデータについてのリードコマンドを受信した場合には、ＨＤＤ６に格納されているデータを読み出して、メインＣＰＵ２０１へ送信する。また、ディスクコントローラ２０６は、ＳＳＤ２０７に格納されているデータについてのリードコマンドを受信した場合には、ＳＳＤ２０７に格納されているデータを読み出して、メインＣＰＵ２０１へ送信する。また、ディスクコントローラ２０６は、ライトコマンド及び書き込み対象のデータをメインＣＰＵ２０１から受信した場合には、受信したデータを、ＨＤＤ６及びＳＳＤ２０７のいずれかに格納する。その際、ディスクコントローラ２０６は、後述する書き込み制御によって、ＨＤＤ６及びＳＳＤ２０７のいずれかにデータを格納する。
【００２９】
図３に示すように、ディスクコントローラ２０６は、ディスクコントローラ２０６ａ及びディスクコントローラ２０６ｂに分割されていてもよい。なお、ディスクコントローラ２０６ａ及びディスクコントローラ２０６ｂの機能は、１つのディスクコントローラ２０６で実現することも可能である。
【００３０】
ディスクコントローラ２０６ａは、ストレージデバイスへのライトアクセスが発生すると、所定の条件に基づいて、当該ライトアクセスの対象データの格納先を、ＨＤＤ６及びＳＳＤ２０７から選択（決定）する。例えば、ディスクコントローラ２０６ａは、ライトアクセスの対象データの種類（例えば、画像データまたは設定データ）を特定し、その特定結果に基づいて、対象データの格納先を選択することも可能である。
【００３１】
ディスクコントローラ２０６ｂは、ディスクコントローラ２０６ａからの指示に従って、ディスクコントローラ２０６ａによって選択された格納先へ対象データを格納する。ディスクコントローラ２０６ｂは、必要に応じて、ＨＤＤ６またはＳＳＤ２０７への書き込み対象のデータの暗号化処理、及びＨＤＤ６またはＳＳＤ２０７から読み出したデータの復号処理も行う。また、ディスクコントローラ２０６ｂは、ＳＳＤ２０７とＨＤＤ６との間でのデータのコピー（ミラーリング）を行う機能も有している。
【００３２】
本実施形態では、ディスクコントローラ２０６ａ，２０６ｂは、アクセス頻度が低い種類として定められたデータ（低頻度データ）をＨＤＤ６へ格納するよう、ストレージデバイスへのデータの書き込み制御を行う。また、ディスクコントローラ２０６ａ，２０６ｂは、アクセス頻度が高い種類として定められたデータ（高頻度データ）をＳＳＤ２０７へ格納するよう、ストレージデバイスへのデータの書き込み制御を行う。
【００３３】
また、ディスクコントローラ２０６ａは、ストレージデバイスへのリードアクセスが発生すると、当該リードコマンドによる読み出しの対象となるデータを、ディスクコントローラ２０６ｂに対して指示する。ディスクコントローラ２０６ｂは、ディスクコントローラ２０６ａから指示されたデータを、ＨＤＤ６またはＳＳＤ２０７から読み出してメインＣＰＵ２０１へ送信する。
【００３４】
＜ＳＳＤの特性＞
図４は、ＮＡＮＤ型フラッシュメモリ（ＮＡＮＤフラッシュ）の特性の概要を示す図である。ＳＳＤに用いられるＮＡＮＤ型フラッシュメモリには、図４（Ａ）に示すように、データの記録方式としてＳＬＣ（シングルレベルセル）、ＭＬＣ（マルチレベルセル）、及びＴＬＣ（トリプルレベルセル）が存在する。ＳＬＣ、ＭＬＣ及びＴＬＣは、それぞれ、１セル当たり１ビット、２ビット及び３ビットを格納する記録方式である。現在、ＭＬＣを採用するＳＳＤが主流であるものの、単価及び記憶容量の観点で有利なＴＬＣを採用するＳＳＤの普及が拡大しつつある。しかし、ＴＬＣを採用するＳＳＬは、セルの書き換え可能回数が他の記録方式よりも少ないため、頻繁なアクセスが行われると寿命が大幅に短くなる可能性がある。
【００３５】
また、ＳＳＤに用いられるＮＡＮＤ型フラッシュメモリでは、物理的な特性上、例えば５１２バイトのブロック単位でしかデータの消去を行うことができない（図４の４０２）。このため、ＳＳＤにおいてライトアクセスによって１６バイトのデータ（図４の４０１）の書き換えを行う場合でも、まず１ブロック（図４の４０２）のデータを読み出し、当該１ブロックの消去を行ってから、読み出したデータの書き戻しを行う必要がある。このように、わずかなデータの書き込みを行う場合であっても、ブロック単位でデータの書き換えを行うことが必要になり、これはＳＳＤの寿命に影響する。
【００３６】
このように、ＭＦＰ１に搭載されるＳＳＤ２０７の寿命が短くなると、ＭＦＰ１よりも先にＳＳＤ２０７が寿命を迎える可能性がある。ＳＳＤ２０７が寿命を迎えると、ＳＳＤ２０７に格納されたデータが使用不能になり、それによりＭＦＰ１が動作を継続できなくなる可能性がある。
【００３７】
＜ＨＤＤ及びＳＳＤの制御の概要＞
本実施形態では、ＭＦＰ１に搭載されたＳＳＤ２０７が寿命を迎えてもＭＦＰ１の動作を可能にするために、ＳＳＤ２０７の寿命が近づいたらＳＳＤ２０７に格納されたデータがＨＤＤ６へバックアップされるように、ＨＤＤ６及びＳＳＤ２０７を制御する。具体的には、ディスクコントローラ２０６は、ＳＳＤ２０７の寿命に関連するパラメータ値をＳＳＤ２０７から取得し、取得したパラメータ値に基づいて、ＳＳＤ２０７の残り寿命を判定する。これにより、ディスクコントローラ２０６は、ＭＦＰ１に搭載されたＳＳＤ２０７の寿命が近づいているどうかを監視する。更に、ディスクコントローラ２０６は、ＳＳＤ２０７の残り寿命の判定結果に従って、ＳＳＤ２０７に格納されているデータがＨＤＤ６へバックアップされるように、ＨＤＤ６及びＳＳＤ２０７を制御する。
【００３８】
これにより、ＳＳＤ２０７が寿命を迎える前に、ＳＳＤ２０７に格納されているデータをＨＤＤ６にバックアップすることが可能になる。即ち、ＭＦＰ１に搭載されたＳＳＤ２０７が寿命を迎えたとしても、ＨＤＤ６にバックアップされたデータを使用することでＭＦＰ１の動作が可能になる。
【００３９】
＜ＨＤＤ及びＳＳＤの制御の手順＞
図５は、ディスクコントローラ２０６によって実行される、ＨＤＤ６及びＳＳＤ２０７の制御手順の例を示すフローチャートである。なお、図５に示す各ステップの処理は、ＦＰＧＡやＡＳＩＣ等のハードウェアにより実現されてもよいし、ソフトウェアにより実現されてもよい。ソフトウェアにより実現される場合、各処理は、ディスクコントローラ２０６内のプロセッサ（図示せず）またはメインＣＰＵ２０１が、ＨＤＤ６等に格納された制御プログラムを読み出して実行する処理によって実現されてもよい。
【００４０】
ＭＦＰ１が電源オフ状態から起動すると、Ｓ１０１で、ディスクコントローラ２０６は、ＳＳＤ２０７の残り寿命を確認する。具体的には、ディスクコントローラ２０６は、ＳＳＤ２０７のＳＭＡＲＴ（Self Monitoring Analysis And Reporting Technology）情報をＳＳＤ２０７から取得する。ＳＭＡＲＴ情報は、ＳＳＤ２０７に格納されており、例えば、エラー率、回転速度（ＨＤＤの場合）、通電時間、寿命に関連する情報（パラメータ値）等を含む。
【００４１】
ＳＳＤ２０７の寿命は、例えば、ＳＳＤ２０７が寿命に達するまでに書き込み可能な総データ量（総書き込み量）によって示される。この総書き込み量は、ＳＳＤ２０７等に予め格納されており、ディスクコントローラ２０６によって使用される。本実施形態では、ディスクコントローラ２０６は、ＳＳＤ２０７の寿命に関連する情報（パラメータ値）として、ＳＳＤ２０７にそれまでに書き込まれたデータ量を、ＳＭＡＲＴ情報から取得する。ディスクコントローラ２０６は、取得したパラメータ値が示すデータ量と、ＳＳＤ２０７の総書き込み量とに基づいて、ＳＳＤ２０７の残り寿命を判定する。具体的には、ディスクコントローラ２０６は、総書き込み量に対する、ＳＳＤ２０７が寿命に達するまでに書き込み可能な残りのデータ量（即ち、総書き込み量と、取得したパラメータ値が示すデータ量との差分）の割合を、残り寿命として判定する。
【００４２】
ＳＳＤ２０７の残り寿命を確認すると、次にＳ１０２で、ディスクコントローラ２０６は、残り寿命が閾値Ｔｈ１を下回っているか否かを判定する。閾値Ｔｈ１は、ＳＳＤ２０７の残り寿命がわずかであるかを判定するための閾値として予め定められる。ディスクコントローラ２０６は、残り寿命が閾値Ｔｈ１を下回ると、ＳＳＤ２０７の残り寿命がわずかであると判定して、処理をＳ１０３へ進める。
【００４３】
Ｓ１０３で、ディスクコントローラ２０６は、ＳＳＤ２０７に格納されているデータをＨＤＤ６へコピーすることで、当該データのバックアップを行う。これにより、ＳＳＤ２０７がその後に寿命に達して故障したとしても、ＨＤＤ６にバックアップされたデータを使用することでＭＦＰ１の動作が可能になる。ディスクコントローラ２０６は、データのバックアップ後に、ＳＳＤ２０７への電力供給を停止させる。これにより、ＭＦＰ１の消費電力を低減できる。その後、ディスクコントローラ２０６は、処理を終了する。
【００４４】
一方、Ｓ１０２で、ディスクコントローラ２０６は、残り寿命が閾値Ｔｈ１を下回っていなければ、処理をＳ１０４へ進める。Ｓ１０４で、ディスクコントローラ２０６は、残り寿命が閾値Ｔｈ２を下回っているか否かを判定する。閾値Ｔｈ２は、ＳＳＤ２０７が近い将来、故障する可能性が高いかを判定するための閾値として、閾値Ｔｈ１よりも高い値に予め定められている。閾値Ｔｈ２は、総書き込み量の１／Ｎ（例えばＮ＝１０）のデータ量に対応する値に定められうる。ディスクコントローラ２０６は、残り寿命が閾値Ｔｈ２を下回ると、ＳＳＤ２０７が近い将来、故障する可能性が高いと判定して、処理をＳ１０５へ進める。
【００４５】
Ｓ１０５で、ディスクコントローラ２０６は、ＳＳＤ２０７に格納されているデータをＨＤＤ６へコピーすることで、当該データのバックアップを行うとともに、ＳＳＤ２０７への電力供給を継続する。その後、ディスクコントローラ２０６は、処理を終了する。これにより、ＳＳＤ２０７が寿命に達して故障する時期が想定より早まったような場合に備えることができ、そのような場合に、ＨＤＤ６にバックアップされたデータを使用することでＭＦＰ１の動作が可能になる。その後、ディスクコントローラ２０６は、処理を終了する。
【００４６】
また、Ｓ１０４で、ディスクコントローラ２０６は、残り寿命が閾値Ｔｈ２を下回っていなければ（即ち、ＳＳＤ２０７の残り寿命に余裕がある場合）、データのバックアップを行うことなく処理を終了する。ただし、ディスクコントローラ２０６は、データの保護の観点で、Ｓ１０３またはＳ１０５のようにＳＳＤ２０７に格納されているデータのＨＤＤ６へのバックアップを行ってもよい。
【００４７】
なお、図５のフローチャートに従った処理は、ＳＳＤ２０７の動作中には、例えば一定の時間間隔で繰り返し実行される。また、ディスクコントローラ２０６は、Ｓ１０３でＳＳＤ２０７への電力供給を停止させ、ＳＳＤ２０７の動作を停止させた後に、ＳＳＤ２０７が新しいＳＳＤに交換された場合には、ＨＤＤ６にコピーしたデータを新しいＳＳＤに復元してもよい。
【００４８】
図６は、上述したディスクコントローラ２０６による制御例を示す図である。ディスクコントローラ２０６は、ＳＳＤ２０７の残り寿命が閾値Ｔｈ１を下回らない限り、上述のように、低頻度データをＨＤＤ６へ格納し、高頻度データをＳＳＤ２０７へ格納するよう、ストレージデバイスへのデータの書き込み制御を行う。低頻度データは、ＨＤＤ６のＨＤＤ動作領域（第１記憶領域）に格納される。
【００４９】
図６（Ａ）は、ＳＳＤ２０７の残り寿命が閾値Ｔｈ２を下回った場合の（Ｓ１０４で「ＹＥＳ」）、ディスクコントローラ２０６による制御を示している。この場合、ディスクコントローラ２０６は、ＳＳＤ２０７に格納されているデータを、ＨＤＤ６のＳＳＤ退避領域（第２記憶領域）へコピーする。その後、ディスクコントローラ２０６は、それまでと同様、低頻度データをＨＤＤ６のＨＤＤ動作領域へ格納し、高頻度データをＳＳＤ２０７へ格納するよう、データの書き込み制御を行う。
【００５０】
図６（Ｂ）は、ＳＳＤ２０７の残り寿命が閾値Ｔｈ１を下回った場合の（Ｓ１０２で「ＹＥＳ」）、ディスクコントローラ２０６による制御を示している。この場合、ディスクコントローラ２０６は、ＳＳＤ２０７に格納されているデータを、ＨＤＤ６のＳＳＤ退避領域（第２記憶領域）へコピーする。その後、ディスクコントローラ２０６は、ＳＳＤ２０７への電力供給を停止させるとともに、低頻度データ及び高頻度データの両方をＨＤＤ６へ格納するよう、データの書き込み制御を行う。具体的には、図６（Ｂ）に示すように、低頻度データをＨＤＤ６のＨＤＤ動作領域へ格納し、高頻度データをＨＤＤ６のＳＳＤ退避領域へ格納するよう、データの書き込み制御を行う。このようにして、ストレージデバイスへの書き込み対象のデータの種類に応じたデータの書き込み制御を、ＳＳＤ２０７の残り寿命に基づいて適切に実現できる。
【００５１】
以上説明したように、本実施形態のＭＦＰ１において、ディスクコントローラ２０６は、ＳＳＤ２０７の寿命に関連するパラメータ値をＳＳＤ２０７から取得し、取得したパラメータ値に基づいて、ＳＳＤ２０７の残り寿命を判定する。ディスクコントローラ２０６は、ＳＳＤ２０７の残り寿命が閾値Ｔｈ２を下回ると、ＳＳＤ２０７に格納されているデータをＨＤＤ６へコピーするとともに、ＳＳＤ２０７の動作を継続する。また、ディスクコントローラ２０６は、ＳＳＤ２０７の残り寿命が閾値Ｔｈ１（＜Ｔｈ２）を下回ると、ＳＳＤ２０７に格納されているデータをＨＤＤ６へコピーするとともに、ＳＳＤ２０７の動作を停止させる。
【００５２】
このように、ＳＳＤ２０７の残り寿命の判定結果に従って、ＳＳＤ２０７が寿命に達する前に、ＳＳＤ２０７に格納されているデータのバックアップを行っておく。これにより、ＳＳＤ２０７が寿命に達したとしても、ＨＤＤ６にバックアップされたデータを使用することでＭＦＰ１の動作が可能になる。
【００５３】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５４】
１：画像形成装置、６：ＨＤＤ、３：コントローラ、２０７：ＳＳＤ、２０１：メインＣＰＵ、２０６：ディスクコントローラ
【図１】
2018063499.tif 000003
【図２】
2018063499.tif 000004
【図３】
2018063499.tif 000005
【図４】
2018063499.tif 000006
【図５】
2018063499.tif 000007
【図６】
2018063499.tif 000008