(57)【要約】【課題】電源オフ時の揮発性メモリから不揮発性メモリへのデータ退避を確実に実施することができる電子機器を提供する。【解決手段】所定のタイミングで揮発性記憶手段３１に記憶した情報を第１の不揮発性記憶手段２０へと退避させる電子機器１であって、電子機器１の稼動状態を制御する第１の制御手段１１と、第１の制御手段１１によって制御される第２の制御手段３２と、を備え、第２の制御手段３２は、第１の制御手段１１から電源遮断要求を受けた場合に、第１の不揮発性記憶手段２０中の更新される予定の情報の量に基づいて退避にかかる退避時間を算出し、退避時間を第１の制御手段１１へ通知する。【選択図】図１
2018022379.tif 000002
【特許請求の範囲】
【請求項１】
所定のタイミングで揮発性記憶手段に記憶した情報を第１の不揮発性記憶手段へと退避させる電子機器であって、
当該電子機器の稼動状態を制御する第１の制御手段と、
前記第１の制御手段によって制御される第２の制御手段と、
を備え、
前記第２の制御手段は、前記第１の制御手段から電源遮断要求を受けた場合に、前記第１の不揮発性記憶手段中の更新される予定の情報の量に基づいて前記退避にかかる退避時間を算出し、前記退避時間を前記第１の制御手段へ通知することを特徴とする電子機器。
【請求項２】
前記第１の制御手段は、前記第２の制御手段から前記退避時間の通知を受けると、前記通知を受けてから前記退避時間が経過した後に、前記第２の制御手段への電源をオフにすることを特徴とする請求項１に記載の電子機器。
【請求項３】
前記第２の制御手段は、前記退避時間を、前記更新される予定の情報の量と、１回の退避に必要な時間と、の積によって算出することを特徴とする請求項１または２に記載の電子機器。
【請求項４】
前記第２の制御手段は、前記電源遮断要求を受けた時に、前記第１の不揮発性記憶手段への退避が未完了の情報の量を取得し、前記更新される予定の情報の量とすることを特徴とする請求項３に記載の電子機器。
【請求項５】
前記第２の制御手段は、前記電源遮断要求を受けた後に、前記第１の不揮発性記憶手段に保存されている情報と前記揮発性記憶手段に保存されている情報とを照合し、退避に失敗した情報の量を取得し、前記退避が未完了の情報の量と前記退避に失敗した情報の量とを合わせたものを前記更新される予定の情報の量とすることを特徴とする請求項４に記載の電子機器。
【請求項６】
前記第２の制御手段は、前記第２の制御手段と前記第１の不揮発性記憶手段との間の信号線を用いた通信による退避の失敗の割合である通信失敗割合に基づいて、前記退避時間の長さを変更することを特徴とする請求項３に記載の電子機器。
【請求項７】
前記第２の制御手段は、前記通信失敗割合が０であり、前記更新される予定の情報の量が０である場合に、前記退避時間を０とすることを特徴とする請求項６に記載の電子機器。
【請求項８】
前記第２の制御手段で使用される設定情報の初期値を格納する第２の不揮発性記憶手段と、
電源遮断前の前記第２の制御手段と前記第１の不揮発性記憶手段との間の通信状態を示す通信状態情報を記憶する第３の不揮発性記憶手段と、
をさらに備え、
前記第２の制御手段は、電源遮断前に前記通信状態情報を前記第１の不揮発性記憶手段と前記第３の不揮発性記憶手段とに保存し、つぎに電源が供給された時に、前記第１の不揮発性記憶手段に保存された前記通信状態情報と前記第３の不揮発性記憶手段に保存された前記通信状態情報とが異なる場合に、前記第１の不揮発性記憶手段から前記情報の読み込みを行わず、前記第２の不揮発性記憶手段から前記設定情報の初期値を前記揮発性記憶手段に読み出すことを特徴とする請求項１に記載の電子機器。
【請求項９】
前記第１の不揮発性記憶手段は、データをブロックの単位で消去され、前記ブロックの単位よりも小さい単位でデータを書き込みされ、
前記第２の制御手段は、前記更新される予定の情報が含まれる前記ブロックの数を、前記更新される予定の情報の量とする請求項１〜５のいずれか１つに記載の電子機器。
【請求項１０】
電子機器の稼動状態を制御する第１の制御手段と、前記第１の制御手段によって制御される第２の制御手段と、を備え、前記第２の制御手段が所定のタイミングで揮発性記憶手段に記憶した情報を不揮発性記憶手段へと退避させる電子機器の制御方法であって、
前記第１の制御手段は、前記第２の制御手段へと電源遮断要求を通知する工程と、
前記第２の制御手段は、前記第１の制御手段から前記電源遮断要求を受けた場合に、前記不揮発性記憶手段中の更新される予定の情報の量に基づいて前記退避にかかる退避時間を算出する工程と、
前記第２の制御手段は、前記退避時間を前記第１の制御手段へ通知する工程と、
を含むことを特徴とする電子機器の制御方法。
【請求項１１】
コンピュータに、
所定のタイミングで揮発性記憶手段に記憶した情報を不揮発性記憶手段へと退避させるステップと、
当該コンピュータに接続され、当該コンピュータを制御する制御手段から電源遮断要求を受けた場合に、前記不揮発性記憶手段中の更新される予定の情報の量に基づいて、前記退避にかかる退避時間を算出するステップと、
前記退避時間を前記制御手段へ通知するステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器、電子機器の制御方法およびプログラムに関する。
【背景技術】
【０００２】
従来、コピー機能、プリンタ機能、ネットワークスキャナ機能、ファクス機能などを備えた画像形成装置（Multi  Functional  Peripheral）などの電子機器では、電源オフ時に、揮発性メモリのデータを不揮発性メモリに保存していた。
【０００３】
たとえば、特許文献１には、電源オフ後も保存すべきデータを記憶する不揮発性メモリと、不揮発性メモリに記憶されたデータが展開される揮発性のシステムメモリと、電源のオフの開始を検知した時に、システムメモリに記憶されたデータを不揮発性メモリに退避する制御部と、を備える情報処理装置が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術では、電源オフにかかる時間は、電子機器によって定められているため、退避するデータ量によってはデータの退避が間に合わないことがあった。つまり、揮発性のシステムメモリから不揮発性メモリへのデータの退避が保障されていないという問題点があった。
【０００５】
本発明は、上記に鑑みてなされたものであって、電源オフ時の揮発性メモリから不揮発性メモリへのデータ退避を確実に実施することができる電子機器、電子機器の制御方法およびプログラムを提供することを目的の１つとする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、所定のタイミングで揮発性記憶手段に記憶した情報を不揮発性記憶手段へと退避させる電子機器であって、当該電子機器の稼動状態を制御する第１の制御手段と、前記第１の制御手段によって制御される第２の制御手段と、を備え、前記第２の制御手段は、前記第１の制御手段から電源遮断要求を受けた場合に、前記不揮発性記憶手段中の更新される予定の情報の量に基づいて前記退避にかかる退避時間を算出し、前記退避時間を前記第１の制御手段へ通知することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、電源オフ時の揮発性メモリから不揮発性メモリへのデータ退避を確実に実施することができるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、第１の実施の形態による電子機器の機能構成を模式的に示すブロック図である。
【図２】図２は、第１の実施の形態による電子機器のハードウェア構成の一例を模式的に示すブロック図である。
【図３】図３は、第１の実施の形態による電子機器での処理手順の一例を示すフローチャートである。
【図４】図４は、第１の実施の形態によるタイムアウト時間算出処理の手順の一例を示すフローチャートである。
【図５】図５は、第２の実施の形態によるタイムアウト時間算出処理の手順の一例を示すフローチャートである。
【図６】図６は、第３の実施の形態による電子機器での処理手順の一例を示すフローチャートである。
【図７】図７は、第３の実施の形態によるタイムアウト時間算出処理の手順の一例を示すフローチャートである。
【図８】図８は、第４の実施の形態による電子機器の機能構成の一例を模式的に示すブロック図である。
【図９】図９は、第４の実施の形態による下位システムユニットの起動時の処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下に添付図面を参照して、電子機器、電子機器の制御方法およびプログラムの実施の形態を詳細に説明する。
【００１０】
（第１の実施の形態）
図１は、第１の実施の形態による電子機器の機能構成を模式的に示すブロック図である。電子機器１は、上位システムユニット１０と、第１の不揮発性記憶手段２０と、下位システムユニット３０と、を備える。
【００１１】
上位システムユニット１０は、電子機器１の電源状態などを制御（管理）する。上位システムユニット１０は、電子機器１の電源状態および稼働状態を制御（管理）する第１の制御手段１１を備える。第１の制御手段１１は、電源遮断要求を下位システムユニット３０に送信し、下位システムユニット３０からタイムアウト時間を受信すると、受信してからタイムアウト時間経過後に、下位システムユニット３０の電源を遮断する。
【００１２】
第１の不揮発性記憶手段２０は、電子機器１の動作に必要な設定情報を記憶する。設定情報は、電源が遮断された後においても保持したいデータである。設定情報は、電子機器１が稼働している間に更新されることがある。その場合には、更新されたデータが第１の不揮発性記憶手段２０に保存されることになる。
【００１３】
下位システムユニット３０は、電子機器１の電源状態などの管理以外のたとえば電子機器１に付された機能を実現する処理を制御する。たとえば、電子機器１が画像形成装置の場合には、下位システムユニット３０は、転写紙などの記録媒体の搬送処理、電子写真方式による作像処理、トナー画像の記録媒体への定着処理などを制御し、記録媒体上への画像の形成を制御するエンジン部などである。また、下位システムユニット３０は、上位システムユニット１０に従属し、上位システムユニット１０によって電源状態および稼働状態が管理される。
【００１４】
下位システムユニット３０は、揮発性記憶手段３１と、第２の制御手段３２と、を備える。揮発性記憶手段３１は、電子機器１の設定情報などを一時的に記憶する。電子機器１の設定情報は、電子機器１の起動時に、第１の不揮発性記憶手段２０から読み出される。
【００１５】
第２の制御手段３２は、電子機器１の起動時に、第１の不揮発性記憶手段２０から設定情報を揮発性記憶手段３１に読み出し、電子機器１の稼働中に、揮発性記憶手段３１に記憶されている設定情報を読み出し、所定の処理を行う。また、第２の制御手段３２は、第１の不揮発性記憶手段２０に記憶されている設定情報と、揮発性記憶手段３１に記憶されている設定情報とを照合し、第１の不揮発性記憶手段２０の設定情報を更新する。つまり、第１の不揮発性記憶手段２０に、最新の設定情報を退避する退避処理が行われる。退避処理は、電子機器１が稼働中の場合には所定のタイミングで行われる。また、退避処理は、上位システムユニット１０から電源遮断要求を受けた場合にも行われる。
【００１６】
上位システムユニット１０と下位システムユニット３０とは、信号線４１によって接続される。信号線４１は、上位システムユニット１０の第１の制御手段１１と、下位システムユニット３０の第２の制御手段３２との間で相互通信を行う信号線として用いられる。下位システムユニット３０の揮発性記憶手段３１と第２の制御手段３２とは、信号線４２によって接続される。電子機器１が稼働している間などのデータの書き換えは、信号線４２を介して行われる。第１の不揮発性記憶手段２０と下位システムユニット３０の第２の制御手段３２とは、信号線４３によって接続される。
【００１７】
第１の実施の形態では、第２の制御手段３２は、上位システムユニット１０から電源遮断要求を受けると、第１の不揮発性記憶手段２０に記憶されるべき情報量に基づいて、揮発性記憶手段３１に記憶されている情報の第１の不揮発性記憶手段２０への退避にかかる退避時間であるタイムアウト時間を算出し、上位システムユニット１０に通知する。なお、ここでは、信号線４３を介して揮発性記憶手段３１から第１の不揮発性記憶手段２０へとデータの退避が行われる際に、通信失敗回数がない場合を例に挙げる。すなわち、稼働中に定期的に行われる退避処理では、揮発性記憶手段３１内のデータが確実に第１の不揮発性記憶手段２０へと保存されることを前提とする。
【００１８】
第２の制御手段３２は、電源遮断要求を受けると、つぎの定期の通信タイミングで更新される予定だったデータの数Ｌをカウントし、更新対象のデータの数とする。そして、第２の制御手段３２は、更新対象のデータの数と、１回のデータ更新に必要な時間Ｔwriteとを用いて、次式（１）のように、更新対象のデータの数を退避させるのに必要なタイムアウト時間Ｔoutを算出する。
Ｔout＝Ｌ・Ｔwrite  ・・・（１）
【００１９】
図２は、第１の実施の形態による電子機器のハードウェア構成の一例を模式的に示すブロック図である。このような電子機器１として、画像形成装置を例示することができる。電子機器１は、上位システムユニット１０としてのコントローラ部１００と、第１の不揮発性記憶手段２０としてのＮＶ−ＲＡＭ（Non-Volatile    Random  Access  Memory）２００と、下位システムユニット３０としてのエンジン部３００と、を備える。
【００２０】
コントローラ部１００は、電子機器１の電源状態などを制御する制御モジュールであり、ここでは下位のエンジン部３００を制御する。コントローラ部１００は、ＣＰＵ（Central  Processing  Unit）１０１と、ＲＯＭ（Read  Only  Memory）１０２と、ＲＡＭ１０３と、ＡＳＩＣ（Application  Specific  Integrated  Circuits）１０４と、ＮＶ−ＲＡＭ１０５と、外部Ｉ／Ｆ１０６と、を備える。
【００２１】
ＣＰＵ１０１は、ＲＯＭ１０２等に格納されたプログラムをＲＡＭ１０３上に展開して実行することによって、コントローラ部１００の動作を制御する。ＲＯＭ１０２は、不揮発性の半導体メモリであり、制御プログラムまたは各種データを記憶する。ＲＯＭ１０２として、たとえばＦＲＯＭ（Flash  ROM）などを用いることができる。ＲＡＭ１０３は、ＲＯＭ１０２に記憶された各種プログラムを実行する際に作業領域として機能する揮発性の半導体メモリである。ＲＡＭ１０３として、たとえばＳＲＡＭ（Static  RAM）、ＤＲＡＭ（Dynamic  RAM）などを用いることができる。
【００２２】
ＡＳＩＣ１０４は、たとえば圧縮／伸長等の各種画像処理、入出力（Ｉ／Ｏ）処理、コントローラ部１００内の電源の制御などを行う。ＮＶ−ＲＡＭ１０５は、機器に固有の条件等の設定データ、制御指令の生成、ネットワーク等との通信に必要な情報などを保存する不揮発性メモリである。外部Ｉ／Ｆ１０６は、パーソナルコンピュータ等の外部装置を接続可能なインタフェース装置である。
【００２３】
ＮＶ−ＲＡＭ２００は、エンジン部３００に用いるデバイスに固有の特性値あるいは調整値等の設定情報を保存する不揮発性の半導体メモリである。ＮＶ−ＲＡＭ２００として、ＥＥＰＲＯＭ（Electrically  Erasable  Programmable  ROM）、ＮＡＮＤ型フラッシュメモリ、ＦｅＲＡＭ（Ferroelectric  RAM）、ＭＲＡＭ（Magnetoresistive  RAM）、ＰＲＡＭ（Phase-Change  RAM）などを用いることができる。
【００２４】
エンジン部３００は、転写紙などの記録媒体の搬送処理、電子写真方式による作像処理、トナー画像の記録媒体への定着処理などを制御し、記録媒体上への画像の形成を制御する制御モジュールである。エンジン部３００は、ＣＰＵ３０１と、ＲＯＭ３０２と、ＲＡＭ３０３と、を備える。
【００２５】
ＣＰＵ３０１は、ＲＯＭ３０２等に格納されたプログラムをＲＡＭ３０３上に展開して実行することによって、エンジン部３００の動作を制御する。ＲＯＭ３０２は、ＣＰＵ３０１が使用する制御、処理等に用いるプログラムまたは制御用データの初期値等を保存する不揮発性の半導体メモリである。ＲＯＭ３０２として、たとえばＦＲＯＭなどを用いることができる。ＲＡＭ３０３は、ＲＯＭ３０２に記憶されたプログラムを実行する際に作業領域として機能する揮発性の半導体メモリである。ＲＡＭ３０３として、たとえばＳＲＡＭ、ＤＲＡＭなどを用いることができる。
【００２６】
つぎに、この様な電子機器１における処理について説明する。図３は、第１の実施の形態による電子機器での処理手順の一例を示すフローチャートである。まず、ユーザからの指示によって、電子機器１の電源がオンにされ（ステップＳ１１）、電子機器１が稼働される。ついで、下位システムユニット３０の第２の制御手段３２は、前回電源遮断時に、第１の不揮発性記憶手段２０に退避されたデータ（設定情報）を揮発性記憶手段３１内に展開する（ステップＳ１２）。
【００２７】
下位システムユニット３０の第２の制御手段３２は、電子機器１の稼働中に揮発性記憶手段３１内のデータの値を他の値に更新し、揮発性記憶手段３１内の更新したデータを定期的に第１の不揮発性記憶手段２０に退避させる（ステップＳ１３）。なお、上記したように、第１の実施の形態では、データの退避中に、第２の制御手段３２と第１の不揮発性記憶手段２０との間の信号線４３で通信異常が発生していないものとする。すなわち、データは、正常に第１の不揮発性記憶手段２０に記憶されるものとする。
【００２８】
その後、ユーザによる電源のオフ等の指示を受けると、上位システムユニット１０の第１の制御手段１１は、下位システムユニット３０の第２の制御手段３２に電源遮断要求を送信する（ステップＳ１４）。第２の制御手段３２は、電源遮断要求を受信すると（ステップＳ１５）、タイムアウト時間算出処理を実行する（ステップＳ１６）。
【００２９】
図４は、第１の実施の形態によるタイムアウト時間算出処理の手順の一例を示すフローチャートである。タイムアウト時間算出処理では、第２の制御手段３２は、稼働中のステップＳ１３の間に行われている定期的な退避に対し、つぎのタイミングで退避する予定だったデータの数Ｌを揮発性記憶手段３１内からカウントする（ステップＳ３１）。すなわち、第１の不揮発性記憶手段２０への退避未完了のデータの数Ｌを取得する。
【００３０】
ついで、第２の制御手段３２は、退避未完了のデータの数Ｌと、１回のデータ更新に必要な時間Ｔwriteと、を用いて、退避未完了のデータの数を退避するのに必要なタイムアウト時間Ｔoutを（１）式にしたがって算出する（ステップＳ３２）。そして、処理が図３のフローチャートへと戻る。
【００３１】
タイムアウト時間算出処理が終了すると、第２の制御手段３２は、算出したタイムアウト時間Ｔoutを上位システムユニット１０に通知する（ステップＳ１７）。上位システムユニット１０の第１の制御手段１１は、タイムアウト時間Ｔoutを受信すると（ステップＳ１８）、計時を開始する（ステップＳ１９）。また、下位システムユニット３０の第２の制御手段３２は、タイムアウト時間Ｔoutを通知した後、更新対象のデータ、すなわち退避が未完了のデータを第１の不揮発性記憶手段２０に退避させる（ステップＳ２０）。
【００３２】
その後、第１の制御手段１１は、タイムアウト時間Ｔoutが経過したかを判定する（ステップＳ２１）。タイムアウト時間Ｔoutが経過していない場合（ステップＳ２１でＮｏの場合）には、タイムアウト時間Ｔoutが経過するまで待ち状態となる。また、タイムアウト時間Ｔoutが経過した場合（ステップＳ２１でＹｅｓの場合）には、第１の制御手段１１は、下位システムユニット３０の電源をオフにし（ステップＳ２２）、これによって下位システムユニット３０の電源がオフにされる（ステップＳ２３）。そして、第１の制御手段１１は、電子機器１全体の電源をオフ状態へと移行させ（ステップＳ２４）、処理が終了する。
【００３３】
第１の実施の形態では、第２の制御手段３２は、電源遮断要求を受けた後、第１の不揮発性記憶手段２０への退避が未完了のデータの数を取得し、この退避が未完了のデータの数を第１の不揮発性記憶手段２０に書き込むのに要するタイムアウト時間を算出して、第１の制御手段１１に通知した。また、第１の制御手段１１は、通知を受信してからタイムアウト時間が経過した後に、下位システムユニット３０の電源をオフにした。これによって、第２の制御手段３２によるデータの退避が完了してから、電子機器１の電源がオフにされるので、電源オフ時の揮発性記憶手段３１から第１の不揮発性記憶手段２０へのデータ退避を確実に実施することができるという効果を有する。
【００３４】
一方、電源遮断要求を受けてから、退避するデータ量に関係なくある定まったタイムアウト時間が経過した後に下位システムユニット３０の電源をオフにする場合には、データの退避にあたって問題が生じる場合がある。退避するデータ量が少ない場合には、退避処理が終了した後、電源がオフになるまでに待ち時間が発生する。逆に退避するデータ量が多い場合には、ある定まった時間では退避処理が終了せず、退避処理の途中で電源がオフされてしまう。そのため、退避する対象のデータに優先度を設定し、優先度の高いデータから退避を行い、優先度の低いデータの一部は退避されない場合がある。
【００３５】
しかし、第１の実施の形態では、退避対象の全てのデータを退避することができるようにタイムアウト時間を第２の制御手段３２で計算し、第１の制御手段１１へと通知している。そのため、退避するデータ量が少ない時に退避が終了してから電源がオフになるまでに待ち時間が発生したり、退避するデータ量が多い時に退避できないデータが発生したりしてしまうことを防ぐことができる。
【００３６】
（第２の実施の形態）
第１の実施の形態では、第２の制御手段と第１の不揮発性記憶手段との間の通信が正常である場合を前提としていたので、退避対象のデータは、揮発性記憶手段内の退避未完了のデータのみであった。電子機器の稼働中に定期的に行われる揮発性記憶手段から第１の不揮発性記憶手段へのデータの退避は、電子機器の内外問わず与えられるノイズなどの影響によって、失敗となることがある。たとえば意図しない領域にデータが退避されてしまう場合などがある。そこで、第２の実施の形態では、第１の不揮発性記憶手段に既に退避されたデータのうち、退避に失敗したデータがある場合の電源遮断時のデータ退避について説明する。
【００３７】
第２の実施の形態の電子機器１は、第１の実施の形態で説明したものと同様の構成を有する。ただし、下位システムユニット３０の第２の制御手段３２は、電源遮断要求を受けた後、退避が未完了のデータの数Ｌと退避に失敗したデータの数Ｍとから更新対象のデータの数を算出し、更新対象のデータの数を用いてタイムアウト時間Ｔoutを算出する。具体的には、第１の不揮発性記憶手段２０内の設定情報を読み出し、第１の不揮発性記憶手段２０に記憶されている設定情報と、揮発性記憶手段３１に記憶されている設定情報とを照合し、退避に失敗した設定情報の数Ｍを取得する機能をさらに有する。また、更新対象のデータの数として、退避が未完了のデータの数Ｌと退避に失敗したデータの数Ｍとの和を算出し、更新対象のデータの数から、タイムアウト時間Ｔoutを次式（２）によって求める。
Ｔout＝（Ｌ＋Ｍ）・Ｔwrite  ・・・（２）
【００３８】
図５は、第２の実施の形態によるタイムアウト時間算出処理の手順の一例を示すフローチャートである。まず、図４のステップＳ３１と同様に、下位システムユニット３０の第２の制御手段３２は、第１の不揮発性記憶手段２０への退避未完了のデータの数Ｌを取得する（ステップＳ５１）。ついで、第２の制御手段３２は、第１の不揮発性記憶手段２０内のデータをすべて読み出し（ステップＳ５２）、揮発性記憶手段３１内で適宜変更されたデータと、読み出した第１の不揮発性記憶手段２０内のデータと、を比較する（ステップＳ５３）。そして、第２の制御手段３２は、稼働中に定期的に行っていた通信時に退避させていたデータの中で、退避に失敗していたデータの数Ｍを取得する（ステップＳ５４）。これは、定期的に行われる通信で第１の不揮発性記憶手段２０に退避されたデータが正しく書き込まれたか、すなわちデータの確からしさを確認するものである。
【００３９】
その後、第２の制御手段３２は、退避が未完了のデータの数Ｌと退避に失敗したデータの数Ｍとの和である更新対象のデータの数Ｌ＋Ｍを算出する（ステップＳ５５）。ついで、第２の制御手段３２は、更新対象のデータの数Ｌ＋Ｍと、１回のデータ更新に必要な時間Ｔwriteと、を用いて、更新対象のデータの数を退避するのに必要なタイムアウト時間Ｔoutを（２）式にしたがって算出する（ステップＳ５６）。そして、処理が終了する。
【００４０】
第２の実施の形態では、第２の制御手段３２が、退避が未完了のデータの数Ｌと退避に失敗したデータの数Ｍとの和を更新対象のデータの数として、タイムアウト時間を算出した。これによって、電子機器１の稼働中に定期的なデータの退避がノイズなどの影響によって書き込みに失敗したデータが存在する場合にも、失敗したデータの再度の書き込み処理を考慮したタイムアウト時間Ｔoutの設定を行うことができるという効果を第１の実施の形態の効果に加えて得ることができる。
【００４１】
（第３の実施の形態）
第１と第２の実施の形態では、下位システムユニットの第２の制御手段と第１の不揮発性記憶手段との間の通信状態は考慮されていなかった。第３の実施の形態では、この通信状態を考慮して更新対象のデータの退避時間を算出する場合について説明する。
【００４２】
第３の実施の形態の電子機器１は、第１と第２の実施の形態で説明したものと同様の構成を有する。ただし、下位システムユニット３０の第２の制御手段３２は、稼働中に定期的に行われる通信についての通信失敗割合Ｐを算出し、通信失敗割合Ｐに基づいてタイムアウト時間Ｔoutの算出方法を変更する。ここで、定期的に行われる通信とは、稼働中に行われる揮発性記憶手段３１内の更新されたデータを第１の不揮発性記憶手段２０へと退避することである。
【００４３】
具体的なタイムアウト時間Ｔoutの算出について説明する。まず、通信失敗割合Ｐの算出は、稼働中における全通信回数Ｏと、通信失敗回数Ｎと、を計数することによって、次式（３）によって求められる。
Ｐ＝Ｎ／Ｏ  ・・・（３）
【００４４】
第２の制御手段３２は、電源遮断要求を受けると、通信失敗割合Ｐが０であるか、通信状態良好範囲内か、あるいは通信状態劣悪範囲内かを判定する。通信状態良好範囲は、通信状態が良好とされる範囲を定めたものである。たとえば、通信状態良好範囲として、０＜Ｐ＜０．２とすることができる。また、通信状態劣悪範囲は、書き込みが失敗するような通信状態が劣悪となる範囲を定めたものである。たとえば、通信状態劣悪範囲として、０．２＜Ｐ＜１とすることができる。なお、これらの範囲は任意に設定することができる。また、境界となる値、上記の例ではＰ＝０．２、については、通信状態良好範囲に含めてもよいし、通信状態劣悪範囲に含めてもよい。
【００４５】
第２の制御手段３２は、通信失敗割合Ｐが０である場合、すなわち通信失敗がなく、データの退避がすべて正常に行われている場合には、揮発性記憶手段３１内のデータと第１の不揮発性記憶手段２０内のデータとの照合は不要となり、第１の実施の形態で説明した方法でタイムアウト時間Ｔoutを算出する。また、通信失敗割合Ｐが通信状態良好範囲にある場合には、第２の実施の形態で説明した方法で、タイムアウト時間Ｔoutを算出する。さらに、通信失敗割合Ｐが通信状態劣悪範囲にある場合には、退避が未完了のデータの退避と誤った書込データの修正とに要する時間は、単位時間１回に加えて、通信失敗割合Ｐに応じた余剰時間を付与して、次式（４）に示されるように算出する。
Ｔout＝（Ｌ＋Ｍ）・Ｔwrite＋Ｐ・（Ｌ＋Ｍ）・Ｔwrite
＝（１＋Ｐ）・（Ｌ＋Ｍ）・Ｔwrite  ・・・（４）
【００４６】
図６は、第３の実施の形態による電子機器での処理手順の一例を示すフローチャートである。なお、ここでは、第１の実施の形態の図３のフローチャートと異なる部分について説明する。
【００４７】
ステップＳ１３で、下位システムユニット３０の揮発性記憶手段３１内のデータを更新し、定期的に更新したデータを第１の不揮発性記憶手段２０に退避した後、全通信回数Ｏを計数する（ステップＳ７１）。全通信回数Ｏは、電子機器１の電源がオンにされた後、定期的に行われる退避処理の回数である。たとえば、全通信回数Ｏは揮発性記憶手段３１に記憶されており、通信が行われる度に、記憶されていた全通信回数Ｏに１を加えたものが新たな全通信回数Ｏとして揮発性記憶手段３１に記憶される。
【００４８】
ついで、第２の制御手段３２は、通信、すなわちデータの退避が正常に行われたかを判定する（ステップＳ７２）。通信が正常に行われたかについては、たとえば第１の不揮発性記憶手段２０に退避されたデータが正確に書き込みされたか、あるいは正常な記憶位置に保存されたかをその都度値を読み返して参照することによって判定することができる。
【００４９】
通信が正常に行われなかった場合（ステップＳ７２でＮｏの場合）には、第２の制御手段３２は、通信失敗回数Ｎを計数する（ステップＳ７３）。たとえば、通信失敗回数Ｎは揮発性記憶手段３１に記憶されており、通信が正常に行われなかった場合に、記憶されていた通信失敗回数Ｎに１を加えたものが新たな通信失敗回数Ｎとして揮発性記憶手段３１に記憶される。
【００５０】
その後、またはステップＳ７２で通信が正常に行われた場合（ステップＳ７２でＹｅｓの場合）には、第２の制御手段３２は、上位システムユニット１０から電源遮断要求を受信したかを判定する（ステップＳ７４）。電源遮断要求を受信していない場合（ステップＳ７４でＮｏの場合）には、ステップＳ１３に処理が戻る。また、電源遮断要求を受信した場合（ステップＳ７４でＹｅｓの場合）には、ステップＳ１５へと処理が移る。このように、第３の実施の形態では、定期的に行われるデータ退避処理の際に、全通信回数Ｏと通信失敗回数Ｎとを記録するようにしている。
【００５１】
図７は、第３の実施の形態によるタイムアウト時間算出処理の手順の一例を示すフローチャートである。ここでは、第２の実施の形態の図５のフローチャートと異なる部分について説明する。
【００５２】
まず、下位システムユニット３０の第２の制御手段３２は、ステップＳ５１で退避が未完了のデータの数Ｌを取得した後、図６のフローチャートのステップＳ７１で計数した全通信回数ＯとステップＳ７３で計数した通信失敗回数Ｎとを用いて、（３）式によって通信失敗割合Ｐを算出する（ステップＳ９１）。
【００５３】
ついで、第２の制御手段３２は、通信失敗割合Ｐが０であるかを判定する（ステップＳ９２）。通信失敗割合Ｐが０である場合（ステップＳ９２でＹｅｓの場合）には、揮発性記憶手段３１から第１の不揮発性記憶手段２０への退避はすべて正常に行われているので、揮発性記憶手段３１内のデータと第１の不揮発性記憶手段２０内のデータとの照合は不要となる。そのため、第２の制御手段３２は、退避未完了のデータの数Ｌを退避するのに必要なタイムアウト時間Ｔoutを（１）式にしたがって算出する（ステップＳ９３）。そして、処理が終了する。一方、通信失敗割合Ｐが０でない場合（ステップＳ９２でＮｏの場合）には、ステップＳ５２へと処理が移る。
【００５４】
また、ステップＳ５５で更新対象のデータの数Ｌ＋Ｍを算出した後、第２の制御手段３２は、通信失敗割合Ｐは通信状態良好範囲内にあるかを判定する（ステップＳ９４）。通信失敗割合Ｐが通信状態良好範囲内にある場合（ステップＳ９４でＹｅｓの場合）には、ステップＳ５６へと処理が移る。一方、通信失敗割合Ｐが通信状態良好範囲内にない場合（ステップＳ９４でＮｏの場合）、すなわち通信失敗割合Ｐが通信状態劣悪範囲内にある場合には、第２の制御手段３２は、更新対象のデータの数Ｌ＋Ｍを、通信失敗割合Ｐの下で退避するのに必要なタイムアウト時間Ｔoutを（４）式にしたがって算出する（ステップＳ９５）。そして、処理が終了する。
【００５５】
なお、図７のフローチャートのステップＳ５１で退避が未完了のデータの数Ｌが０であり、かつステップＳ９２で通信失敗割合Ｐが０である場合は、ステップＳ９３で算出されるタイムアウト時間Ｔoutは０となる。この場合には、ステップＳ５２〜Ｓ５５での揮発性記憶手段３１内のデータと第１の不揮発性記憶手段２０内のデータを照合することは不要となり、さらに退避すべきデータがない。そのため、最も短い時間で電子機器１の電源をオフにするシーケンスを終えることができる。
【００５６】
第３の実施の形態では、定期的な退避処理での通信失敗割合Ｐを記録し、電源遮断要求を受けた後に、通信失敗割合Ｐに応じてタイムアウト時間Ｔoutの算出を変化させた。具体的には、通信失敗割合Ｐが通信状態良好範囲内にある場合には、更新対象のデータの退避を、１個のデータの数当たり、１回の書き込みで終了させることができる。また、通信失敗割合Ｐが０の場合には、退避がすべて正常に行われているとして、揮発性記憶手段３１内のデータと第１の不揮発性記憶手段２０内のデータとの照合を不要として、電源遮断の時間を短縮することができる。さらに、通信失敗割合Ｐが通信状態劣悪範囲内にある場合には、更新対象のデータの退避を、１個のデータの数当たり、１回の書き込みと通信失敗割合Ｐに応じた書き込み回数とによって行われるとして、タイムアウト時間Ｔoutを算出した。これによって、更新対象のデータの更新の際に失敗時の補填時間が考慮されるため、通信状態の劣悪な環境での更新における精度を向上させることができるという効果を有する。
【００５７】
（第４の実施の形態）
第１〜第３の実施の形態では、使用環境などが悪く通信が正常に行われる確率が非常に低い場合、すなわち通信失敗割合が極めて高い場合については考慮していない。第４の実施形態では、通信失敗割合が極めて高い場合について説明する。
【００５８】
図８は、第４の実施の形態による電子機器の機能構成の一例を模式的に示すブロック図である。電子機器１は、下位システムユニット３０が第１の実施の形態の図１で説明した構造とは異なる。すなわち、下位システムユニット３０は、揮発性記憶手段３１と第２の制御手段３２に加えて、第２の不揮発性記憶手段３３と、第３の不揮発性記憶手段３４と、をさらに備える。第２の不揮発性記憶手段３３は、下位システムユニット３０で使用される設定情報の初期値（初期設定情報）を保存する。第２の不揮発性記憶手段３３として、ＦＲＯＭなどを用いることができる。第３の不揮発性記憶手段３４は、電源遮断前の第２の制御手段３２と第１の不揮発性記憶手段２０との間の通信状態を示す通信状態情報を保存する。通信状態情報として、たとえば第１の不揮発性記憶手段２０における退避に失敗したデータ数などを例に挙げることができる。第３の不揮発性記憶手段３４として、ＦＲＯＭ、ＥＥＰＲＯＭなどを用いることができる。
【００５９】
また、第２の制御手段３２は、電源遮断要求を受けた後に、更新対象のデータを第１の不揮発性記憶手段２０に退避した後、通信状態情報を取得し、第１の不揮発性記憶手段２０と第３の不揮発性記憶手段３４とに保存する。そして、つぎに電源がオンされた時に、第２の制御手段３２は、第１の不揮発性記憶手段２０中の通信状態情報と、第３の不揮発性記憶手段３４中の通信状態情報と、を読み出して比較し、両者が大きく異なる場合には、第２の不揮発性記憶手段３３から設定情報を読み出して、揮発性記憶手段３１に展開する。大きく異なる場合とは、たとえば両者の違いが誤差の範囲を超えている場合などである。このような第３の不揮発性記憶手段３４中の通信状態情報と、第１の不揮発性記憶手段２０中の通信状態情報と、が大きく異なる場合は、通信失敗割合Ｐが０．９＜Ｐ＜１．０である場合のように非常に通信状態が悪い場合であることが多い。
【００６０】
また、第１の不揮発性記憶手段２０には、通信状態情報が保存される。なお、第１の実施の形態と同一の構成要素には同一の符号を付して、その説明を省略している。
【００６１】
第４の実施の形態による電子機器１のハードウェア構成は、第１の実施の形態の図２で示したものと同様の構成を有する。図２のエンジン部３００のＲＯＭ３０２が、上記した第２の不揮発性記憶手段３３と第３の不揮発性記憶手段３４の役割を有している。
【００６２】
図９は、第４の実施の形態による下位システムユニットの起動時の処理手順の一例を示すフローチャートである。まず、上位システムユニット１０からの指示によって下位システムユニット３０の電源がオンにされると、下位システムユニット３０の第２の制御手段３２は、第１の不揮発性記憶手段２０から通信状態情報を読み出し（ステップＳ１１１）、また第３の不揮発性記憶手段３４からも通信状態情報を読み出す（ステップＳ１１２）。
【００６３】
ついで、第２の制御手段３２は、第１の不揮発性記憶手段２０内の通信状態情報と第３の不揮発性記憶手段３４内の通信状態情報とを比較し（ステップＳ１１３）、両者が大きく異なるかを判定する（ステップＳ１１４）。両者が大きく異ならない場合（ステップＳ１１４でＮｏの場合）には、第２の制御手段３２は、第１の不揮発性記憶手段２０内のデータを揮発性記憶手段３１内に展開し（ステップＳ１１５）、起動時の処理が終了する。その後は、図３または図６のステップＳ１３以降の処理が行われる。
【００６４】
また、両者が大きく異なる場合（ステップＳ１１４でＹｅｓの場合）には、第２の制御手段３２は、第２の不揮発性記憶手段３３内の設定情報の初期値を揮発性記憶手段３１内に展開し（ステップＳ１１６）、処理が終了する。その後は、揮発性記憶手段３１内の初期値に対して更新が行われることになる。
【００６５】
たとえば、電子機器１が画像形成装置であり、下位システムユニット３０でコピー枚数のカウントを行っている場合を考える。第１の不揮発性記憶手段２０には、電源がオフにされるたびにコピー枚数の累積値が更新されていく。電源がオフにされる時に、第２の制御手段３２は、第１の不揮発性記憶手段２０における書き込みが失敗したデータの数をカウントし、第１の不揮発性記憶手段２０と第３の不揮発性記憶手段３４とにその値を通信状態情報として保存する。
【００６６】
つぎに電源がオンにされた時に、第２の制御手段３２は、第１の不揮発性記憶手段２０内と第３の不揮発性記憶手段３４内の書き込みが失敗したデータの数を通信状態情報として読み出し、両者を比較する。第３の不揮発性記憶手段３４内の書き込みが失敗したデータの数がたとえば「１０」であるのに対して、第１の不揮発性記憶手段２０内の書き込みが失敗したデータの数が「１０００」であるような場合には、第１の不揮発性記憶手段２０内に保存されたデータの信頼性は非常に低く、このデータに基づいて電子機器１を動作させると不都合が生じる。そのため、第４の実施の形態では、第２の不揮発性記憶手段３３に保存された初期値データを揮発性記憶手段３１に読み出して処理を行うようにしている。
【００６７】
第４の実施の形態では、第１の不揮発性記憶手段２０内の通信状態情報が第３の不揮発性記憶手段３４内の通信状態情報と大きく異なる場合には、電子機器１の起動時に第１の不揮発性記憶手段２０内のデータを読み出さずに、第２の不揮発性記憶手段３３内の初期値データを揮発性記憶手段３１に展開して、更新を行うようにした。これによって、誤って書き込まれたデータが多く存在する第１の不揮発性記憶手段２０からのデータ読み込みによる電子機器１の誤動作を防止することができるという効果を有する。
【００６８】
なお、第１〜第４の実施の形態で、ＥＥＰＲＯＭのようにライト動作時に一定の待ち時間が発生するようなメモリが第１の不揮発性記憶手段２０として用いられる場合もある。ＥＥＰＲＯＭの場合には、書き込みを行う場合には、ブロックという単位でデータをたとえば揮発性記憶手段３１に読み出し、揮発性記憶手段３１に読み出したデータを更新した後、ブロックよりも小さい書込単位で揮発性記憶手段３１からＥＥＰＲＯＭに書き込みを行う。この一連の処理が、１回の書き込み処理となる。
【００６９】
そのため、同じブロック内の異なるアドレスに、退避が未完了のデータまたは退避に失敗したデータが存在する場合には、これらのデータについては１回の書き込み処理で退避処理を行うことができる。つまり、第１の不揮発性記憶手段２０がＥＥＰＲＯＭである場合には、退避が未完了であるデータの数Ｌは、退避が未完了であるデータが含まれるブロックの数となり、退避に失敗したデータの数Ｍは、退避に失敗したデータが含まれるブロックの数となる。
【００７０】
なお、本実施の形態の電子機器１で実行されるプログラムは、ＲＯＭ等に予め組み込まれて提供される。
【００７１】
本実施の形態の電子機器１で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成されてもよい。
【００７２】
また、本実施の形態の電子機器１で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、本実施の形態の電子機器１で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【００７３】
本実施の形態の電子機器１の上位システムユニット１０で実行されるプログラムは、上述した各部（第１の制御手段１１）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が上記記録媒体からプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、第１の制御手段１１が主記憶装置上に生成されるようになっている。
【００７４】
本実施の形態の電子機器１の下位システムユニット３０で実行されるプログラムは、上述した各部（第２の制御手段３２）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が上記記録媒体からプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、第２の制御手段３２が主記憶装置上に生成されるようになっている。
【００７５】
なお、上記した実施の形態では、電子機器１が、コピー機能、プリンタ機能、スキャナ機能およびファクシミリ機能を有する画像形成装置である場合を例に挙げて説明した。しかし、電子機器１として、上記の機能のうち１以上の機能を有する画像形成装置であってもよい。
【符号の説明】
【００７６】
１  電子機器
１０  上位システムユニット
１１  第１の制御手段
２０  第１の不揮発性記憶手段
３０  下位システムユニット
３１  揮発性記憶手段
３２  第２の制御手段
３３  第２の不揮発性記憶手段
３４  第３の不揮発性記憶手段
４１〜４３  信号線
【先行技術文献】
【特許文献】
【００７７】
【特許文献１】特許第４２３５９２０号公報
【図１】
2018022379.tif 000003
【図２】
2018022379.tif 000004
【図３】
2018022379.tif 000005
【図４】
2018022379.tif 000006
【図５】
2018022379.tif 000007
【図６】
2018022379.tif 000008
【図７】
2018022379.tif 000009
【図８】
2018022379.tif 000010
【図９】
2018022379.tif 000011