JP7367434B2 - 電子機器、電子機器の制御方法および電子機器の制御プログラム - Google Patents

電子機器、電子機器の制御方法および電子機器の制御プログラム Download PDF

Info

Publication number
JP7367434B2
JP7367434B2 JP2019180103A JP2019180103A JP7367434B2 JP 7367434 B2 JP7367434 B2 JP 7367434B2 JP 2019180103 A JP2019180103 A JP 2019180103A JP 2019180103 A JP2019180103 A JP 2019180103A JP 7367434 B2 JP7367434 B2 JP 7367434B2
Authority
JP
Japan
Prior art keywords
memory
abnormality
electronic device
unit
operating frequency
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019180103A
Other languages
English (en)
Other versions
JP2021056837A (ja
Inventor
浩平 西崎
茂 土佐
克彦 面▲高▼
浩一 定野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2019180103A priority Critical patent/JP7367434B2/ja
Publication of JP2021056837A publication Critical patent/JP2021056837A/ja
Application granted granted Critical
Publication of JP7367434B2 publication Critical patent/JP7367434B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Control Or Security For Electrophotography (AREA)
  • Retry When Errors Occur (AREA)

Description

本発明は、電子機器、電子機器の制御方法および電子機器の制御プログラムに関する。
CPU(Central Processing Unit)が実行するプログラムにより動作する電気機器の性能は、動作周波数(クロック信号の周波数)が高いほど高くなる場合が多い。例えば、この種の電子機器に搭載されるメモリのアクセス速度は、メモリを動作させる動作周波数が高いほど高くなる。
一方、メモリが動作可能な最高動作周波数は、メモリの電気的特性の個体差や、メモリが搭載される電子機器の温度、電源電圧等の動作環境によりばらつく。そして、各メモリは、メモリ毎にばらつく最高動作周波数を超えてアクセスされた場合、正常に動作しない。
そこで、CPUにより一定時間毎にメモリにデータを読み書きし、正しく読み書きできた場合に動作周波数を上げ、正しく読み書きできなかった場合に動作周波数を下げることで、最適な動作周波数を決定する技術が開示されている(特許文献1)。
しかしながら、上記技術では、メモリが故障により正常にアクセスできない場合にも、動作周波数が順次下げられてしまう。また、メモリが動作するかどうかを判断するためのメモリに対する読み書きは、電子機器の本来のシステム動作に不要な動作であるため、電子機器の性能を低下させてしまう。さらに、メモリの故障を検出できず、メモリの故障を電子機器の外部に通知することができない。この場合、例えば、故障したメモリの交換等のメンテナンスを迅速に行うことができない。
開示の技術は、上記の課題に鑑みてなされたものであり、電子機器の本来のシステム動作に影響を与えることなく、メモリの異常を判断して電子機器の外部に通知することを目的とする。
上記技術的課題を解決するため、本発明の一形態の電子機器は、プロセッサと、前記プロセッサが実行する命令を保持するメモリと、を有する電子機器であって、前記電子機器にシステムエラーが発生した場合、前記プロセッサが実行した命令と、前記プロセッサが命令の実行に使用したレジスタの内容とに基づいて、前記プロセッサによる前記メモリのアクセスに異常が発生したかどうかを判断する異常判断部と、前記アクセスの異常が判断された場合、前記メモリの動作周波数を低減する動作周波数制御部と、低減された前記動作周波数で前記メモリの第1メモリテストを実施するメモリテスト部と、前記第1メモリテストが失敗した場合、前記メモリの異常を示すメモリ異常情報を前記電子機器の外部に通知し、前記第1メモリテストが成功した場合、前記動作周波数の低減を示す周波数低減情報を前記電子機器の外部に通知する通知部と、を有する。
電子機器の本来のシステム動作に影響を与えることなく、メモリの異常を判断して電子機器の外部に通知することができる。
本発明の一実施形態に係る電子機器の一例を示すブロック図である。 図1のCPUの動作の一例を示すシーケンス図である。 図2の続きを示すシーケンス図である。 図1のメモリ異常判断部によるCPUのレジスタ値の解析動作の一例を示す説明図である。 図2および図3のシーケンス図におけるエラー処理部の動作の一例を示すフロー図である。 図5の続きを示すフロー図である。 図1の電子機器の起動時のCPUの動作の一例を示すシーケンス図である。 本発明の第2の実施形態に係る電子機器の一例を示すブロック図である。 図8の電子機器において、異常発生時刻保持部に保持された異常発生時刻に基づく制御の一例を示す説明図である。 図1および図8に示した電子機器の一例を示す正面図である。 図1および図8に示した電子機器のハードウェア構成の一例を示すブロック図である。
以下、図面を参照して実施の形態の説明を行う。なお、各図面において、同一構成部分には同一符号を付し、重複した説明を省略する場合がある。
(第1の実施形態)
図1は、本発明の一実施形態に係る電子機器の一例を示すブロック図である。例えば、図1に示す電子機器100は、MFP(MultiFunction Printer)等の画像形成装置である。なお、電子機器100は、スキャナー、プリンターまたはファクシミリ等の単一の機能を有する画像形成装置でもよく、プロジェクターまたは電子黒板等でもよい。電子機器100は、1つのシステムとして機能するため、以下では、システムとも称する。
電子機器100は、CPU10等のプロセッサ、メインメモリ20、不揮発メモリ30および少なくとも1つの機能部40を有する。例えば、電子機器100がMFPの場合、複数の機能部40は、スキャナー部、プリンター部およびファクシミリ部を含んでもよい。
例えば、メインメモリ20は、図示しないクロック信号に同期して動作するSDRAM(Synchronous Dynamic Random Access Memory)等であり、不揮発メモリ30は、データを電気的に書き換え可能なフラッシュメモリ等である。
メインメモリ20は、OS(Operating System)21と、各機能部40を制御して各機能部40の機能を実現するためのシステム用プログラム22と、メインメモリ20の動作を管理するメモリ管理プログラム23とがそれぞれ格納される記憶領域を有する。不揮発メモリ30は、ハード異常フラグ31および周波数低減フラグ32の値を記憶する記憶領域と、メモリ異常カウンタ33のカウンタ値を記憶する記憶領域とを有する。ハード異常フラグ31、周波数低減フラグ32およびメモリ異常カウンタ33のカウンタ値を不揮発メモリ30に記憶することで、電子機器100の電源が遮断された場合にも、情報が消失することを防止できる。
CPU10は、メインメモリ20に記憶されたOS21、システム用プログラム22およびメモリ管理プログラム23を実行することで、各機能部40を制御して各機能部40の機能を実現する。CPU10は、OS21、システム用プログラム22およびメモリ管理プログラム23を並列に実行可能である。
CPU10は、例えば、システム起動部11、システム制御部12、エラー処理部13、メモリ異常判断部14、メモリテスト部15、メモリ動作周波数制御部16、不揮発メモリ制御部17およびユーザー通知部18の機能を有する。CPU10の各種機能は、CPU10がメインメモリ20に記憶されるOS21、システム用プログラム22およびメモリ管理プログラム23を実行することで実現される。
例えば、システム起動部11およびシステム制御部12は、システム用プログラム22により実現される。エラー処理部13、メモリ異常判断部14、メモリテスト部15、メモリ動作周波数制御部16、不揮発メモリ制御部17およびユーザー通知部18は、メモリ管理プログラムにより実現される。
なお、CPU10がメモリ管理プログラム23を実行することで実現される機能は、CPU10以外のハードウェアで実現されてもよい。例えば、CPU10以外のハードウェアは、電子機器100に搭載される図示しないFPGA(Field-Programmable Gate Array)またはASIC(Application Specific Integrated Circuit)等により実現されてもよい。
システム起動部11は、システムの起動を制御するとともに、システムの起動時にメインメモリ20が異常な場合、ユーザー通知部18を介して異常を電子機器100の外部に通知する制御を実施する。例えば、メインメモリ20の異常は、メインメモリ20自体の故障、または、メインメモリ20に接続される信号線の断線、ショート等である。
システム制御部12は、各機能部40を制御して、システム(すなわち、電子機器100)の機能を実現する。また、システム制御部12は、システムに異常が発生した場合、エラー処理部13に異常時処理を実施させる。
エラー処理部13は、システム制御部12からの異常時処理の指示に基づいて、異常が発生した要因を判定し、判定結果にしたがって異常を回避する処理を実施する。例えば、エラー処理部13は、システムに異常が発生した場合、メモリ異常判断部14にメインメモリ20に異常があるか否かを判断させる。そして、エラー処理部13は、メモリ異常判断部14から異常の通知を受けた場合、メインメモリ20の異常に対するエラー処理を実施する。メインメモリ20の異常に対するエラー処理については、図2以降で説明する。
メモリ異常判断部14は、エラー処理部13からの指示に基づいて、CPU10内のレジスタに保持されているレジスタ値を解析する。メモリ異常判断部14は、レジスタ値の解析によりメインメモリ20の読み書きで異常が発生したか否かを判断し、判断の結果をエラー処理部13に通知する。
メモリテスト部15は、エラー処理部13からの指示に基づいて、メインメモリ20の動作テスト(メモリテスト)を実施する。例えば、動作テストは、メインメモリ20にデータ(期待値)を書き込み、書き込んだデータを読み出すことで実施される。メモリテスト部15は、期待値を読み出せた場合、テストが成功した旨のテスト結果をエラー処理部13に通知する。すなわち、メモリテスト部15は、メインメモリ20が正常に動作する旨のテスト結果をエラー処理部13に通知する。メモリテスト部15は、期待値を読み出せなかった場合、メインメモリ20が異常である旨のテスト結果をエラー処理部13に通知する。
メモリ動作周波数制御部16は、エラー処理部13からの動作周波数の変更要求に基づいて、メインメモリ20の動作周波数を低減し、あるいは、低減している動作周波数を通常の動作周波数に戻す。なお、メインメモリ20は、機能部40等を動作させるシステムクロック信号とは別の専用のクロック信号を受けて動作する。以下では、動作周波数は、メインメモリ20の動作周波数を示し、CPU10等の電子機器100内で使用される他のクロック信号の周波数を示すものではない。
不揮発メモリ制御部17は、エラー処理部13からのハード異常フラグ31の書き込み要求に基づいて、メインメモリ20に異常が発生したことを示す情報をハード異常フラグ31に書き込む。例えば、ハード異常フラグ31は、初期状態において、異常の未発生を示す"0"にリセットされており、メインメモリ20に異常が発生した場合"1"に設定される。不揮発メモリ制御部17は、システム起動部11からのハード異常フラグ31の読み出し要求に基づいて、ハード異常フラグ31の値を読み出し、読み出した値をシステム起動部11に通知する。
不揮発メモリ制御部17は、エラー処理部13からの周波数低減フラグ32の書き込み要求に基づいて、メインメモリ20の動作周波数を示す情報を周波数低減フラグ32に書き込む。周波数低減フラグ32は、メインメモリ20の動作周波数が予め設定された通常の動作周波数に設定されている場合、"0"にリセットされ、動作周波数が通常値から低減値に設定された場合、"1"にセットされる。なお、この実施形態では、動作周波数の低減値は1種類であり、メインメモリ20の動作周波数は、通常値または低減値のいずれかに設定される。
不揮発メモリ制御部17は、エラー処理部13からの周波数低減フラグ32の読み出し要求に基づいて、周波数低減フラグ32の値を読み出し、読み出した値をエラー処理部13に通知する。不揮発メモリ制御部17は、システム起動部11からの周波数低減フラグ32の読み出し要求に基づいて、周波数低減フラグ32の値を読み出し、読み出した値をシステム起動部11に通知する。
不揮発メモリ制御部17は、エラー処理部13からのメモリ異常カウンタ33の書き込み要求に基づいて、メモリ異常カウンタ33のカウント値を更新する。カウント値の更新は、カウントアップにより行われるが、カウントダウンにより行われてもよい。不揮発メモリ制御部17は、エラー処理部13からのメモリ異常カウンタ33の読み出し要求に基づいて、メモリ異常カウンタ33のカウント値を読み出し、読み出したカウント値をエラー処理部13に通知する。
ユーザー通知部18は、システム起動部11からの異常の通知指示に基づいて、メインメモリ20の異常状態を示すメモリ異常情報を電子機器100の外部に通知する。また、ユーザー通知部18は、システム起動部11からの周波数の低減の通知指示に基づいて、メインメモリ20の動作周波数が低減値に設定されていることを示す周波数低減情報を電子機器100の外部に通知する。例えば、メモリ異常情報および周波数低減情報は、電子機器100の操作部の液晶パネル等を介して、電子機器100を操作するユーザーまたは電子機器100の管理者に通知される。
図2および図3は、図1のCPU10の動作の一例を示すシーケンス図である。図3は、図2の続きを示す。図2および図3に示すシーケンスは、CPU10がメモリ管理プログラムを実行することで実現される。すなわち、図2および図3は、電子機器100の制御方法および電子機器100の制御プログラムの一例を示している。図2および図3において、符号altは、分岐処理(alternative)を示す。
まず、システム制御部12は、システムエラーが発生した場合、異常時処理を実施させる要求をエラー処理部13に発行する(図2(a))。エラー処理部13は、システム制御部12からの要求に基づいて、メモリ異常判断部14にメモリ異常判断を要求する(図2(b))。
メモリ異常判断部14は、メモリ異常判断部14からの要求に基づいて、CPU10に内蔵されるレジスタの値(レジスタ値)を解析し、メインメモリ20に対するデータの読み書きで異常が発生したかどうかを判断する(図2(c))。メモリ異常判断部14によるレジスタ値の解析動作については、図4で説明する。メモリ異常判断部14は、判断結果をエラー処理部13に通知する(図2(d))。メインメモリ20の読み書きに異常がない場合、図2および図3に示すシーケンスは終了する。
メインメモリ20に対するデータの読み書きで異常であった場合、エラー処理部13は、メモリ異常カウンタ33および周波数低減フラグ32の取得要求を不揮発メモリ制御部17に発行する(図2(e))。不揮発メモリ制御部17は、取得要求に基づいて、メモリ異常カウンタ33のカウント値と周波数低減フラグ32の値とを不揮発メモリ30から読み出し、読み出した値をエラー処理部13に通知する(図2(f))。
エラー処理部13は、メモリ異常カウンタ33のカウント値が予め設定された閾値を超えている場合、もしくは、周波数低減フラグ32が低減状態に設定済みの場合、不揮発メモリ制御部17にハード異常フラグ31の書き込み要求を発行する(図2(g))。不揮発メモリ制御部17は、エラー処理部13からの書き込み要求に基づいて、ハード異常フラグ31を異常状態に設定し、エラー処理部13に異常状態の書き込み完了を応答する(図2(h))。
なお、メモリ異常カウンタ33は、メインメモリ20の異常が判断された後、メインメモリ20を通常の動作周波数でテストするメモリテスト(第2メモリテスト)で異常が検出されなかった場合に更新される。このため、メモリ異常カウンタ33のカウント値は、メインメモリ20に対するデータの読み書きで異常が判定されたにもかかわらず、第2メモリテストでメインメモリ20が正常であった回数を示す。
しかしながら、第2メモリテストで異常が検出されなかった回数が、一定値を超えた場合、エラー処理部13は、電子機器100をこのまま動作し続けた場合、メインメモリ20が故障する可能性があると判断し、ハード異常フラグ31を異常状態に設定する。
これより、メインメモリ20が突然故障する前に、後述するように、電子機器100を使用するユーザー等にメインメモリ20の異常を通知することができる。この結果、電子機器100を使用するユーザー等は、メインメモリ20の交換の準備等を予め行うことができ、メインメモリ20が実際に故障した場合に、電子機器100の動作が停止される時間を最小限にすることができる。すなわち、故障した電子機器100を迅速に復旧することができる。
次に、メモリの異常が判定されたときに第2メモリテストを実施することが、ユーザー設定により指定されている場合、エラー処理部13は、メモリテスト部15にメインメモリ20の第2メモリテストの実施を要求する(図2(i))。メモリテスト部15は、エラー処理部13からの要求に基づいて、第2メモリテストを実施する(図2(j))。メモリテスト部15は、第2メモリテストの実施結果をエラー処理部13に通知する(図2(k))。
第2メモリテストは、通常の動作周波数で実施されるため、電子機器100の正常状態でのメインメモリ20の実力を評価することができる。したがって、第2メモリテストが成功した場合、メモリ異常判断部14が判定したメインメモリ20の異常は、一過性のものと判断することができる。しかしながら、上述したように、故障の前兆として、メインメモリ20の異常が検出された可能性もある。
そこで、図3において、エラー処理部13は、第2メモリテストが成功した場合、すなわち、メインメモリ20が正常に動作することが確認された場合、不揮発メモリ制御部17にメモリ異常カウンタ33の書き込み要求を発行する(図3(l))。不揮発メモリ制御部17は、書き込み要求に基づいて、メモリ異常カウンタ33のカウント値を更新し、エラー処理部13にカウント値の更新完了を応答する(図3(m))。この後、エラー処理部13は、システムの再起動を実施し、図2および図3に示すシーケンスを終了する。なお、動作周波数が既に低減状態に設定されている場合、第2メモリテストは、低減された動作周波数で実施されてもよい。
一方、エラー処理部13は、第2メモリテストが失敗した場合、または、ユーザー設定により第2メモリテストの実施が指定されていない場合、メモリ動作周波数制御部16にメインメモリ20の動作周波数の低減要求を発行する(図3(n))。メモリ動作周波数制御部16は、低減要求に基づいて、メインメモリ20の動作周波数を低減し、動作周波数の低減完了をエラー処理部13に応答する(図3(o))。
第2メモリテストが失敗した場合、すなわち、メインメモリ20のアクセスエラーが検出された場合、メインメモリ20のアクセスマージンの低下が原因である可能性がある。この場合、動作周波数を下げることで、メインメモリ20が正常に動作する場合がある。したがって、第2メモリテストが失敗した場合にも、動作周波数を下げて、メインメモリ20が正常に動作するかを確かめることが好ましい。これにより、メインメモリ20のアクセス速度は低下するが、メインメモリ20の寿命を延ばして、電子機器100の動作を継続することができる。
図7で説明するように、動作周波数を下げたことは、システムの再起動時に、電子機器100を使用するユーザー等に通知される。したがって、ユーザー等は、メインメモリ20が故障する前に、メインメモリ20を交換する準備および交換等のメンテナンスを迅速に行うことができ、例えば、電子機器100を使用できない期間を最小限にすることができる。
周波数低減フラグ32の低減状態への書き込みが完了した後、エラー処理部13は、メモリテスト部15にメインメモリ20のテストの実施を要求する(図3(p))。以下では、動作周波数を低減した状態でのメインメモリ20のテストを、第1メモリテストを称する。メモリテスト部15は、エラー処理部13からの要求に基づいて、メインメモリ20の第1メモリテストを実施する(図3(q))。メモリテスト部15は、第1メモリテストの実施結果をエラー処理部13に通知する(図3(r))。
第1メモリテストが成功した場合、エラー処理部13は、不揮発メモリ制御部17に周波数低減フラグ32の書き込み要求を発行する(図3(s))。不揮発メモリ制御部17は、書き込み要求に基づいて、周波数低減フラグ32に、メインメモリ20の動作周波数の低減を示す情報を書き込み、周波数低減フラグ32の低減状態への書き込み完了をエラー処理部13に応答する(図3(t))。
一方、第1メモリテストが失敗した場合、エラー処理部13は、不揮発メモリ制御部17にハード異常フラグ31の書き込み要求を発行する(図3(u))。不揮発メモリ制御部17は、エラー処理部13からの書き込み要求に基づいて、ハード異常フラグ31を異常状態に設定し、エラー処理部13に異常状態への設定の完了を応答する(図3(v))。この後、エラー処理部13は、システムの再起動を実施し、図2および図3に示すシーケンスを終了する。
動作周波数を低減したにもかかわらず、第1メモリテストが失敗した場合、メインメモリ20が故障またはアクセスマージンが低下している可能性が高い。このため、ハード異常フラグ31を異常状態に設定し、システムの再起動後の起動シーケンス(図7)でユーザー等にメインメモリ20に異常を迅速に通知することが好ましい。
図4は、図1のメモリ異常判断部14によるCPU10のレジスタ値の解析動作の一例を示す説明図である。メモリ異常判断部14は、システムエラーの発生時にCPU10のレジスタに保持されているデータ値に基づいて、次の2つの解析手法によりメインメモリ20の異常を判断する。
解析手法(1)では、メモリ異常判断部14は、CPU10のレジスタ値に基づいてプログラムカウンタPCの不正値を検出することで、メインメモリ20の異常を判断する。例えば、リンク付き分岐命令BLXにおいて、メインメモリ20から読み出したプログラムカウンタPCからの相対アドレス(0x49D2)が、本来の相対アドレス(0x49D0)と異なるとする。ここで、符号0xは、後に続く数値が16進数であることを示す。
また、命令BLXによりリンクレジスタLRにコピーされたアドレス値(16進数でc005ff5e)は、本来のアドレス値(0xc005ff5c)と異なるとする。メモリ異常判断部14は、リンクレジスタLRのアドレス値が所定の指定値(この例では"4")で割り切れるか否かを確認し、割り切れない場合、メインメモリ20に対する読み出しアクセスで異常が発生したと判断する。
解析手法(2)では、メモリ異常判断部14は、汎用レジスタRに格納された不正なデータ(アドレス)を検出することで、メインメモリ20の異常を判断する。例えば、イミディエートオフセットによる2つのロード命令LDRが実行され、最初のロード命令LDRによりメインメモリ20から読み出されてレジスタR1に格納されたデータ(アドレス)がアクセス不可なメモリ領域を示すとする。この場合、次のロード命令LDRでレジスタ値R1+オフセット値で示されるアドレスは不正であり、不正なアドレスから読み出され、レジスタR3に格納されるデータ(0x7f002678)は不正なデータである。
メモリ異常判断部14は、システムエラーが発生した際のプログラムカウンタPCが示す命令がLDR命令であり、かつ、メインメモリ20から読み出されたアドレスがアクセス不可な領域であった場合、メインメモリ20の異常を判断する。
このように、この実施形態では、システムエラーが発生した場合に、CPU10が実行したプログラム中の命令と、命令で使用されたレジスタの内容とに基づいて、メインメモリ20の異常を判断する。これにより、電子機器100のシステム動作中にメインメモリ20の読み書きテストを実施する場合に比べて、システム動作に影響を与えることなくメインメモリ20の異常を判断することができる。すなわち、電子機器100の性能を低下させることなく、メインメモリ20の異常を判断することができる。
図5および図6は、図2および図3のシーケンス図におけるエラー処理部13の動作の一例を示すフロー図である。エラー処理部13の機能は、CPU10がメモリ管理プログラムを実行することで実現される。すなわち、図5および図6は、電子機器100の制御方法および電子機器100の制御プログラムの一例を示している。図5および図6に示す処理は所定の周期で実施される。
まず、ステップS10において、エラー処理部13は、システム制御部12から異常時処理の要求を受信した場合、処理をステップS12に移行させる。異常時処理の要求を受信しない場合、処理は終了する。
ステップS12において、エラー処理部13は、メモリ異常判断部14にメモリ異常判断を実施させる。次に、ステップS14において、エラー処理部13は、メモリ異常判断部14による解析結果に基づいて、メインメモリ20に異常が発生したかどうかを判定する。エラー処理部13は、メモリ異常判断部14の解析結果がメインメモリ20の異常を示す場合、処理をステップS16に移行し、異常を示さない場合、処理を終了する。
ステップS16において、エラー処理部13は、メモリ異常カウンタ33のカウント値と、周波数低減フラグ32の状態を読み出す。次に、ステップS18において、エラー処理部13は、メモリ異常カウンタ33のカウント値が予め設定された閾値を超えている場合、処理をステップS22に移行し、カウント値が閾値以下の場合、処理をステップS20に移行する。
ステップS20において、エラー処理部13は、周波数低減フラグ32が低減状態(="1")に設定されている場合、処理をステップS22に移行し、周波数低減フラグ32が通常状態(="0")に設定されている倍、処理を図6のステップS30に移行する。ステップS22において、エラー処理部13は、ハード異常フラグ31を異常状態(="1")に設定し、処理を図6のステップS30に移行する。
なお、ステップS22において、ハード異常フラグ31を"1"に設定した後、図6のステップS48に移行してシステムの再起動を実施してもよい。しかしながら、メインメモリ20が通常の動作周波数で動作している場合、動作周波数を低減することで、メインメモリ20の動作マージンが大きくなり、メインメモリ20が正常に動作する可能性がある。この場合、上述したように、電子機器100を使用するユーザー等は、メインメモリ20が故障する前にメインメモリ20の交換の準備等を行うことができ、メインメモリ20が故障した後に電子機器100の動作が停止される時間を最小限にすることができる。
図6のステップS30において、エラー処理部13は、ユーザー設定により、異常時に第2メモリテストを実施することが指定されている場合、処理をステップS32に移行する。エラー処理部13は、ユーザー設定により、異常時に第2メモリテストを実施することが指定されていない場合、処理をステップS38に移行する。
ステップS32において、エラー処理部13は、メモリテスト部15にメインメモリ20の第2メモリテストを実施させる。次に、ステップS34において、エラー処理部13は、第2メモリテストが成功した場合、すなわち、メインメモリ20が正常に動作することを確認した場合、処理をステップS36に移行する。一方、エラー処理部13は、メインメモリ20の第2メモリテストが失敗した場合、すなわち、メインメモリ20が正常に動作しないことを確認した場合、処理をステップS38に移行する。
ステップS36において、エラー処理部13は、メモリ異常カウンタ33のカウント値を更新し、処理をステップS48に移行する。
ステップS38において、エラー処理部13は、メインメモリ20の動作マージンを増加させてメインメモリ20を正常に動作させるために、メインメモリ20の動作周波数を低減する。次に、ステップS40において、エラー処理部13は、メモリテスト部15にメインメモリ20の第1メモリテストを実施させる。次に、ステップS42において、エラー処理部13は、第1メモリテストが成功した場合、処理をステップS44に移行し、第1メモリテストが失敗した場合、処理をステップS46に移行する。
ステップS44において、エラー処理部13は、動作周波数の低減により、メインメモリ20が正常に動作可能になったため、周波数低減フラグ32を、メインメモリ20の動作周波数を低減したことを示す"1"に設定し、処理をステップS48に移行する。ステップS46において、エラー処理部13は、動作周波数を低減してもメインメモリ20が正常に動作しないため、ハード異常フラグ31を、メインメモリ20の異常を示す"1"に設定し、処理をステップS48に移行する。
ステップS48において、エラー処理部13は、システムの再起動を実施し、処理を終了する。なお、故障したメインメモリ20の正常に動作するメインメモリ20と交換したことに基づいて、メモリ異常カウンタ33は初期値にリセットされ、ハード異常フラグ31は、正常状態を示す"0"にリセットされる。
図7は、図1の電子機器100の起動時のCPU10の動作の一例を示すシーケンス図である。シーケンス図の記述の規則は、図2および図3と同様である。図7に示すシーケンスは、CPU10がシステム用プログラムとメモリ管理プログラムとを実行することで実現される。すなわち、図7は、電子機器100の制御方法および電子機器100の制御プログラムの一例を示している。
図7に示す起動シーケンスは、電子機器100の電源スイッチがユーザー等によりオンされた場合に開始され、あるいは、図3に示したシステムの再起動時に開始される。なお、図7は、メインメモリ20の管理に関する起動シーケンスを示しており、図7に示す以外に、通常の起動シーケンスが実施される。
システム起動部11は、電子機器100(すなわち、システム)の起動(再起動を含む)に基づいて、ハード異常フラグ31の取得要求を不揮発メモリ制御部17に発行する(図7(a))。不揮発メモリ制御部17は、取得要求に基づいて、ハード異常フラグ31の値を読み出し、読み出した値をシステム起動部11に通知する(図7(b))。
システム起動部11は、ハード異常フラグ31が異常状態を示す"1"に設定されている場合、メインメモリ20の異常が判断されているため、ユーザー通知部18にハード異常通知の発行を指示する(図7(c))。ユーザー通知部18は、システム起動部11からの指示に基づいて、メインメモリ20の異常を示すメモリ異常情報を電子機器100の外部に出力する(図7(d))。
メモリ異常情報は、電子機器100の表示画面に表示されてもよく、電子機器100の表示ランプを点灯または点滅させてもよく、通信インターフェースを介して外部に送信されてもよく、音を発生してもよい。さらに、メモリ異常情報は、電子機器100が備えるネットワークインタフェースを介して電子機器100のメンテナンス拠点等に通信されてもよい。この場合、交換用のメインメモリ20(メモリモジュール等)をメンテナンス拠点等から電子機器100の設置場所に迅速に届けることができ、電子機器100が停止している期間を最小限にすることができる。
なお、ハード異常フラグ31が"1"に設定されている場合にも、図6のステップS34またはS42でメモリテストが成功した場合、メインメモリ20は故障しておらず、電子機器100は正常に動作可能である。このため、上述したように、電子機器100を使用するユーザー等は、メインメモリ20が故障する前にメインメモリ20の交換の準備等を行うことができる。
次に、システム起動部11は、周波数低減フラグ32の取得要求を不揮発メモリ制御部17に発行する(図7(e))。不揮発メモリ制御部17は、取得要求に基づいて、周波数低減フラグ32の値を読み出し、読み出した値をシステム起動部11に通知する(図7(f))。
システム起動部11は、周波数低減フラグ32が低減状態を示す"1"に設定されている場合、メモリ動作周波数制御部16にメインメモリ20の動作周波数の低減要求を発行する(図7(g))。メモリ動作周波数制御部16は、低減要求に基づいて、メインメモリ20の動作周波数を低減し、動作周波数の低減完了をエラー処理部13に応答する(図7(h))。なお、動作周波数が既に低減されている場合、動作周波数は低減された状態に維持される。
システム起動部11は、低減要求を発行した後、ユーザー通知部18に動作周波数を低減したことを示す周波数低減通知の発行を指示する(図7(i))。ユーザー通知部18は、システム起動部11からの指示に基づいて、動作周波数を低減したことを示す周波数低減情報を電子機器100の外部に出力する(図7(j))。例えば、周波数低減情報は、電子機器100の表示画面等に表示される。電子機器100を使用するユーザー等は、表示画面等に表示される周波数低減情報により、メインメモリ20が近々故障するかもしれないことを認識する。
これより、ユーザー等は、メインメモリ20が故障する前に、メインメモリ20を交換する準備および交換等のメンテナンスを迅速に行うことができ、例えば、電子機器100を使用できない期間を最小限にすることができる。
なお、システム起動部11は、電子機器100を使用するユーザー等から動作周波数の低減を停止する周波数低減停止要求を受けた場合、メモリ動作周波数制御部16にメインメモリ20の動作周波数を通常値に戻す復帰要求を発行する(図7(k))。例えば、周波数低減停止要求は、電子機器100の操作パネル等を介して電子機器100に入力される。メモリ動作周波数制御部16は、復帰要求に基づいて、メインメモリ20の動作周波数を元に戻す(図7(l))。
なお、図6のステップS38において動作周波数を低減した後、ステップS42でメモリテストが失敗した場合、動作周波数を通常値に戻しても、メインメモリ20が正常に動作するとは限らない。しかしながら、メインメモリ20が正常に動作しない場合、図6のステップS38で動作周波数が再度低減される。
以上、この実施形態では、メインメモリ20の異常を、システムエラーの発生時に、CPU10が実行した命令と、命令で使用されたレジスタの内容とに基づいて判断する。これにより、電子機器100のシステム動作中にメインメモリ20の読み書きテストを実施する場合に比べて、システム動作に影響を与えることなくメインメモリ20の異常を判断することができる。すなわち、電子機器100の性能を低下させることなく、メインメモリ20の異常を判断することができる。
メインメモリ20の異常を判断した場合、メインメモリ20の異常を示すメモリ異常情報を電子機器100の外部に通知することで、ユーザー等は、メインメモリ20が故障する前にメインメモリ20の交換の準備等を行うことができる。また、メインメモリ20の動作周波数を低減した場合、動作周波数の低減を示す周波数低減情報を電子機器100の外部に通知することで、ユーザー等は、メインメモリ20が寿命に近いことを認識することができる。そして、メインメモリ20が故障する前にメインメモリ20の交換の準備等を行うことができる。
この結果、この実施形態では、電子機器100の本来のシステム動作に影響を与えることなく、メインメモリ20の異常を判断して、異常を電子機器100の外部に通知することができる。
(第2の実施形態)
図8は、本発明の第2の実施形態に係る電子機器の一例を示すブロック図である。図1と同様の要素については、同じ符号を付し、詳細な説明を省略する。図8に示す電子機器102は、図1に示した電子機器100と同様に、例えば、MFP(MultiFunction Printer)等の画像形成装置である。
電子機器102は、異常発生時刻を記憶する異常発生時刻保持部34が、図1に示した不揮発メモリ30に割り当てられることを除き、図1に示した電子機器100と同様の構成を有する。エラー処理部13は、メインメモリ20のアクセスで異常が発生した時刻を異常発生時刻として異常発生時刻保持部34に格納する。
なお、エラー処理部13は、メモリ異常カウンタ33を更新する場合に、更新時刻を異常発生時刻として異常発生時刻保持部34に格納してもよい。あるいは、エラー処理部13は、メモリ異常判断部14がメインメモリ20の異常を判断した時刻を異常発生時刻として異常発生時刻保持部34に格納してもよい。
電子機器102は、時刻を異常発生時刻保持部34に格納する機能がエラー処理部13に追加されたことを除き、図2、図3、図5および図6に示した処理と同様の処理を実行する。例えば、エラー処理部13は、図3(l)および図6のステップS36において、メモリ異常カウンタ33の更新とともに、異常発生時刻を異常発生時刻保持部34に格納する処理を実施する。不揮発メモリ制御部17は、図3(m)において、メモリ異常カウンタ33の更新とともに、異常発生時刻を異常発生時刻保持部34に格納する。また、電子機器102の起動シーケンスの処理は、図7に示した処理に、図9に示す処理が追加される。
図9は、図8の電子機器102において、異常発生時刻保持部34に保持された異常発生時刻に基づく制御の一例を示す説明図である。
例えば、メインメモリ20の動作不良が間欠的に発生する場合、メモリ異常カウンタ33が閾値を超えてもメインメモリ20が故障しているとは限らない。一方、メインメモリ20が故障している場合、図5に示したステップS14により、メインメモリ20の異常が連続して検出され、メモリ異常カウンタ33は、連続して更新される。
したがって、システム起動部11は、図7に示した起動シーケンスに追加して、異常発生時刻保持部34が保持する異常発生時刻から予め設定された一定期間(第1期間)が経過した場合、メモリ異常カウンタ33をリセットする。これにより、メモリ異常カウンタ33のカウンタ値が、メインメモリ20の故障により閾値を超えたのか、メインメモリ20が動作可能であるにもかかわらず閾値を超えたのかを切り分けることができる。換言すれば、メインメモリ20が動作可能な場合、図5に示したステップS18からステップS22に処理が移行されることを防止することができ、ハード異常フラグ31が異常状態に設定されることを防止することができる。
また、動作周波数の低減は、図6に示したステップS34で第2メモリテストが失敗した場合に行われるが、第2メモリテストの失敗が一時的である場合、メインメモリ20は、通常の動作周波数で動作可能である。この場合、通常の動作周波数で動作可能であるにもかかわらず、メインメモリ20は低い動作周波数で動作するため、メインメモリ20に対するアクセス速度が低下し、電子機器100の性能が低下してしまう。
そこで、システム起動部11は、図7に示した起動シーケンスに加えて、異常発生時刻保持部34が保持する異常発生時刻から予め設定された一定期間(第2期間)が経過した場合、メモリテスト部15に第2メモリテストの実施を要求する。この際、システム起動部11は、第2メモリテストを実施するために、メインメモリ20の動作周波数を通常値に設定する。なお、システム起動部11は、ユーザー等からメインメモリ20の動作周波数を通常値に戻す要求(動作周波数低減の停止要求)があった場合にも、メモリテスト部15に第2メモリテストの実施を要求する。
そして、メモリテスト部15は、通常の動作周波数による第2メモリテストを実施する。第2メモリテストが成功した場合、システム起動部11は、通常の動作周波数で起動シーケンスを実施し、周波数低減フラグ32を動作周波数が低減されていないことを示す"0"にリセットし、異常発生時刻保持部34に現在時刻を設定する。
これにより、第2メモリテストが一時的に失敗したが、メインメモリ20が通常の動作周波数で動作可能な場合、動作周波数を通常値に戻すことができ、電子機器100の性能が低下することを抑制することができる。
以上、第2の実施形態においても、上述した第1の実施形態と同様の効果を得ることができる。さらに、第2の実施形態では、メインメモリ20に一時的にエラーが発生した場合、ハード異常フラグ31が異常状態に設定されることを防止することができる。また、メインメモリ20に一時的にエラーが発生して、動作周波数が低減された場合、動作周波数を通常値に戻すことができ、電子機器100の性能が低下することを抑制することができる。
なお、上述した実施形態では、メインメモリ20の動作周波数を通常値と低減値のいずれかに設定する例を記載したが、動作周波数の低減値は、複数あってもよい。この場合、例えば、図6のステップS34でメモリテストが失敗する毎に、動作周波数が順次低減される。
図10は、図1および図8に示した電子機器100、102の一例を示す正面図である。例えば、電子機器100、102は、MFP等の複合機であり、コピー機能、ファクシミリ機能、プリント機能、スキャナー機能、また、スキャナー機能やファクシミリ機能により入力された画像を保存や配信する機能を有する。MPFは、PC(Personal Computer)等の外部装置とも通信可能であり、外部装置から受信した指示に応じた動作を行うこともできる。図10では、MFPの一部を透視して示している。
MFPは、帯電された感光体表面が選択的に露光されることにより書き込まれた静電潜像に、トナーを付着させ、付着させたトナーを用紙等の記録媒体に転写する、いわゆる電子写真方式の画像形成装置である。以下では、電子機器100、102を画像形成装置とも称する。
画像形成装置は、操作パネル1と、起動スイッチ2と、コントローラー3と、読取部4と、エンジン制御部5と、プリンターユニット6と、給紙カセット7A、7Bと、搬送ユニット8とを有する。例えば、図1および図8に示したCPU10、メインメモリ20および不揮発メモリ30は、コントローラー3の制御基板に搭載される。
操作パネル1は、利用者の操作に応じた各種の入力を受け付けるとともに、各種の情報(例えば、受け付けた操作を示す情報、画像形成装置の動作状況を示す情報画像形成装置の設定状態を示す情報など)を表示する。操作パネル1は、一例としてタッチパネル機能を搭載した液晶表示装置(LCD:Liquid Cristal Display)で構成されるが、これに限られるものではない。例えばタッチパネル機能が搭載された有機EL(Electro-Luminescence)表示装置で構成されてもよい。さらに、画像形成装置は、ハードウェアキー等の操作部やLED(Light Emitting Diode)等の表示部を有してもよい。
起動スイッチ2は、画像形成装置の電源がオフの状態でユーザーによって押圧されると、画像形成装置を起動する。また画像形成装置が起動した状態、つまり電源がオンの状態でユーザーによって押下されると、画像形成装置をオフ状態とする。
コントローラー3は、画像形成装置の全体を制御する。例えば、コントローラー3は、操作パネル1が受け付けた操作に応じた動作を、画像形成装置に実行させる。また、コントローラー3は、PC等の外部機器から画像形成装置が受け付けた指示等を画像形成装置に実行させる。
読取部4は、ADF(Auto Document Feeder)41とスキャナー部42とを有する。ADF41は、ADF41上に置かれた原稿を順次し搬送し光学的に読み取り、画像データを生成する。スキャナー部42は、透明な原稿台の上に原稿を固定し、固定された原稿を光学的に読み取り画像データを生成する。エンジン制御部5は、読取部4により生成された画像データに基づき、プリンターユニット6や搬送ユニット8を制御する制御信号を生成する。
プリンターユニット6は、用紙等の記録媒体上に画像を形成する画像形成部として機能する。プリンターユニット6は、感光体としての感光体ドラム61と、感光体ドラム61の外表面を帯電させる帯電部材62とを有する。また、プリンターユニット6は、読取部4により読み取られた画像データに基づいて、帯電された感光体ドラム61上を露光して、感光体上に静電潜像を書き込む書込みユニット63と、書き込まれた潜像をトナーで現像する現像部材64とを有する。さらに、プリンターユニット6は、トナー画像を形成する記録媒体を搬送する搬送ベルト65と、記録媒体上のトナーを記録媒体に定着させる定着部66とを有し、記録媒体上にトナー画像を形成する。
給紙カセット7A、7Bは画像形成前の記録媒体を収納する。図1においては一例として二つの給紙カセットを有し、それぞれにサイズの異なる記録媒体を収納しているが、画像形成装置は、1つの給紙カセットのみを有してもよく、3つ以上の給紙カセットを有してもよい。搬送ユニット8は、各種ローラを有し、給紙カセット7A、7Bにそれぞれ収納された記録媒体をプリンターユニット6に搬送する。
ここで、コピーモードを例として画像形成装置での画像形成の流れを説明する。まずユーザー、操作パネル1で機能切替キー等を操作することにより、画像形成装置のコピー機能、プリンター機能およびファクシミリ機能を順次に切り替えて選択し、各機能を動作させることが可能となる。コピー機能の選択時にはコピーモードとなり、プリンター機能の選択時にはプリンターモードとなり、ファクシミリ機能選択時にはファクシミリモードとなる。コピーモードでは、読取部4により、コピーする各原稿の画像情報が読み取られ、画像データが生成される。
感光体ドラム61の外周面は、帯電部材62により一様に帯電された後、書込みユニット63からの照射光(図1中に点線矢印Aで示す。)により露光され、その結果、感光体ドラム61の外周面上に静電潜像が形成される。現像部材64は、この静電潜像をトナーにより可視像化する。これにより、感光体ドラム61上にトナー画像が形成される。感光体ドラム61上に形成されたトナー画像は、搬送ベルト65上の記録媒体に転写される。そして定着部66が記録媒体上のトナー画像のトナーをヒータ等の熱で加熱溶融して、記録媒体にトナー画像を定着させ、記録媒体を画像形成装置から排出する。
なお、プリンターユニット6がモノクロの電子写真方式によって画像を形成する場合を説明したが、カラーの電子写真方式やインクジェット方式などであってもよく、画像形成方式はこれらに限られない。
図11は、図1および図8に示した電子機器100、102のハードウェア構成の一例を示すブロック図である。電子機器100、102の各々は、CPU10、RAM51、ROM52、補助記憶装置53、入出力インターフェース部54および表示装置55を有し、これらがバス56で相互に接続されている。
CPU10は、図1および図8に示したCPU10である。CPU10は、ROM52または補助記憶装置53からRAM51に転送された各種プログラムを実行することで、上述した各種機能を実現する。各種プログラムは、図1および図8に示したOS21、システム用プログラム22およびメモリ管理プログラム23を含む。RAM51は、図1および図8に示したメインメモリ20を含んでおり、CPU10のワークエリアとしても使用される。ROM52は、各種プログラムや各種プログラムで使用するパラメータ等を記憶する。本発明のネットワーク制御プログラムがROM52に保存されてもよい。
補助記憶装置53は、SSD(Solid State Drive)、HDD(Hard Disk Drive)などの記憶装置である。例えば、補助記憶装置53は、OS21、システム用プログラム22およびメモリ管理プログラム23等の各種プログラムや、電子機器100、102の動作に必要な各種のデータ、ファイル等を格納する。
入出力インターフェース部54は、タッチパネル、キーボード、操作ボタン、スピーカー等のユーザインターフェースと、他の電子機器と通信するための通信インターフェース等を含む。
表示装置55は、例えば、図10に示した操作パネル1を含み、電子機器100、102を動作させるための操作ウィンドウや、スキャナー部42がスキャンした原稿の画像等が表示される。
以上、各実施形態に基づき本発明の説明を行ってきたが、上記実施形態に示した要件に本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することができ、その応用形態に応じて適切に定めることができる。
10 CPU
11 システム起動部
12 システム制御部
13 エラー処理部
14 メモリ異常判断部
15 メモリテスト部
16 メモリ動作周波数制御部
17 不揮発メモリ制御部
18 ユーザー通知部
20 メインメモリ
21 OS
22 システム用プログラム
23 メモリ管理プログラム
30 不揮発メモリ
31 ハード異常フラグ
32 周波数低減フラグ
33 メモリ異常カウンタ
34 異常発生時刻保持部
40 機能部
100、102 電子機器
特開平10-91273号公報

Claims (10)

  1. プロセッサと、前記プロセッサが実行する命令を保持するメモリと、を有する電子機器であって、
    前記電子機器にシステムエラーが発生した場合、前記プロセッサが実行した命令と、前記プロセッサが命令の実行に使用したレジスタの内容とに基づいて、前記プロセッサによる前記メモリのアクセスに異常が発生したかどうかを判断する異常判断部と、
    前記アクセスの異常が判断された場合、前記メモリの動作周波数を低減する動作周波数制御部と、
    低減された前記動作周波数で前記メモリの第1メモリテストを実施するメモリテスト部と、
    前記第1メモリテストが失敗した場合、前記メモリの異常を示すメモリ異常情報を前記電子機器の外部に通知し、前記第1メモリテストが成功した場合、前記動作周波数の低減を示す周波数低減情報を前記電子機器の外部に通知する通知部と、
    を有する電子機器。
  2. 前記メモリの異常を示すハード異常フラグと、
    前記動作周波数の低減を示す周波数低減フラグと、
    前記ハード異常フラグ、前記周波数低減フラグ、前記異常判断部、前記動作周波数制御部および前記メモリテスト部を制御するエラー処理部と、
    前記電子機器の起動を制御するとともに前記通知部を制御するシステム起動部と、をさらに有し、
    前記エラー処理部は、
    前記第1メモリテストが成功した場合、前記周波数低減フラグを前記動作周波数の低減状態に設定し、前記第1メモリテストが失敗した場合、前記ハード異常フラグを異常状態に設定し、
    前記第1メモリテストの実施後に、前記電子機器を再起動し、
    前記システム起動部は、前記再起動に基づいて、起動シーケンスを実施するとともに、前記ハード異常フラグが前記異常状態に設定されている場合、前記通知部に前記メモリ異常情報を通知させ、前記周波数低減フラグが前記低減状態に設定されている場合、前記通知部に前記周波数低減情報を通知させる、請求項1に記載の電子機器。
  3. メモリ異常カウンタをさらに有し、
    前記エラー処理部は、
    前記動作周波数を低減しない第2メモリテストの実施が選択されている場合、前記アクセスの異常が判断された後、前記第1メモリテストの前に前記第2メモリテストを実施し、
    前記第2メモリテストが成功した場合、前記メモリ異常カウンタを更新した後、前記電子機器を再起動し、前記第2メモリテストが失敗した場合、前記第1メモリテストを実施し、
    前記メモリ異常カウンタが予め設定された閾値を超えた場合、または、前記周波数低減フラグが前記低減状態に設定されている場合、前記ハード異常フラグを前記異常状態に設定する、請求項2に記載の電子機器。
  4. 前記メモリのアクセスに異常が発生した時刻を保持する異常発生時刻保持部をさらに有し、
    前記システム起動部は、前記起動シーケンスの実施時に、前記異常発生時刻保持部が保持する異常発生時刻から第1期間が経過している場合、前記メモリ異常カウンタをリセットする、請求項3に記載の電子機器。
  5. 前記動作周波数を低減状態から通常状態に戻す指示を外部から受けた場合、前記システム起動部は、前記起動シーケンスの実施時に前記メモリテスト部に前記第2メモリテストを実施させ、前記第2メモリテストが成功した場合、前記周波数低減フラグを前記通常状態に設定し、前記第2メモリテストが失敗した場合、前記異常発生時刻保持部が保持する異常発生時刻を現在時刻に更新する、請求項4に記載の電子機器。
  6. 前記システム起動部は、前記起動シーケンスの実施時に、前記異常発生時刻保持部が保持する異常発生時刻から第2期間が経過している場合、前記メモリテスト部に前記第2メモリテストを実施させ、前記第2メモリテストが成功した場合、前記周波数低減フラグを通常状態に設定し、前記第2メモリテストが失敗した場合、前記異常発生時刻保持部が保持する異常発生時刻を現在時刻に更新する、請求項4または請求項5に記載の電子機器。
  7. 前記ハード異常フラグ、前記周波数低減フラグおよび前記メモリ異常カウンタを保持する不揮発メモリを有する請求項3ないし請求項6のいずれか1項に記載の電子機器。
  8. 前記異常判断部は、プログラムカウンタの値が不正である場合、または、前記メモリにアクセスするためにレジスタに保持されたアドレスが不正である場合、前記アクセスの異常を判断する、請求項1ないし請求項7のいずれか1項に記載の電子機器。
  9. プロセッサと、前記プロセッサが実行する命令を保持するメモリと、を有する電子機器の制御方法であって、
    前記電子機器にシステムエラーが発生した場合、前記プロセッサが実行した命令と、前記プロセッサが命令の実行に使用したレジスタの内容とに基づいて、前記プロセッサによる前記メモリのアクセスに異常が発生したかどうかを判断し、
    前記アクセスの異常が判断された場合、前記メモリの動作周波数を低減し、
    低減された前記動作周波数で前記メモリの第1メモリテストを実施し、
    前記第1メモリテストが失敗した場合、前記メモリの異常を示すメモリ異常情報を前記電子機器の外部に通知し、前記第1メモリテストが成功した場合、前記動作周波数の低減を示す周波数低減情報を前記電子機器の外部に通知する、電子機器の制御方法。
  10. プロセッサと、前記プロセッサが実行する命令を保持するメモリと、を有する電子機器の制御プログラムであって、
    前記電子機器にシステムエラーが発生した場合、前記プロセッサが実行した命令と、前記プロセッサが命令の実行に使用したレジスタの内容とに基づいて、前記プロセッサによる前記メモリのアクセスに異常が発生したかどうかを判断し、
    前記アクセスの異常が判断された場合、前記メモリの動作周波数を低減し、
    低減された前記動作周波数で前記メモリの第1メモリテストを実施し、
    前記第1メモリテストが失敗した場合、前記メモリの異常を示すメモリ異常情報を前記電子機器の外部に通知し、前記第1メモリテストが成功した場合、前記動作周波数の低減を示す周波数低減情報を前記電子機器の外部に通知する、処理を前記プロセッサに実行させる電子機器の制御プログラム。
JP2019180103A 2019-09-30 2019-09-30 電子機器、電子機器の制御方法および電子機器の制御プログラム Active JP7367434B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019180103A JP7367434B2 (ja) 2019-09-30 2019-09-30 電子機器、電子機器の制御方法および電子機器の制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019180103A JP7367434B2 (ja) 2019-09-30 2019-09-30 電子機器、電子機器の制御方法および電子機器の制御プログラム

Publications (2)

Publication Number Publication Date
JP2021056837A JP2021056837A (ja) 2021-04-08
JP7367434B2 true JP7367434B2 (ja) 2023-10-24

Family

ID=75272634

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019180103A Active JP7367434B2 (ja) 2019-09-30 2019-09-30 電子機器、電子機器の制御方法および電子機器の制御プログラム

Country Status (1)

Country Link
JP (1) JP7367434B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005063414A (ja) 2003-08-19 2005-03-10 Internatl Business Mach Corp <Ibm> 経年変化電子コンポーネントを補償するために動作周波数を調整する周波数変更技法
JP2005518571A (ja) 2002-02-26 2005-06-23 トムソン ライセンシング ソシエテ アノニム 画像表示のデジタル方法及びデジタル表示装置
CN101788948A (zh) 2010-02-05 2010-07-28 瑞斯康达科技发展股份有限公司 一种日志信息的动态存储***及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3485969B2 (ja) * 1994-08-09 2004-01-13 ヤンマー農機株式会社 接ぎ木苗製造装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005518571A (ja) 2002-02-26 2005-06-23 トムソン ライセンシング ソシエテ アノニム 画像表示のデジタル方法及びデジタル表示装置
JP2005063414A (ja) 2003-08-19 2005-03-10 Internatl Business Mach Corp <Ibm> 経年変化電子コンポーネントを補償するために動作周波数を調整する周波数変更技法
CN101788948A (zh) 2010-02-05 2010-07-28 瑞斯康达科技发展股份有限公司 一种日志信息的动态存储***及方法

Also Published As

Publication number Publication date
JP2021056837A (ja) 2021-04-08

Similar Documents

Publication Publication Date Title
US10044900B2 (en) Image forming apparatus, method of controlling the same, and storage medium
JP2013254423A (ja) 情報処理装置及びその制御方法、並びにプログラム
JP2014085582A (ja) 画像形成装置及びその制御方法、並びにプログラム
JP2008148226A (ja) Hdd自己診断機能を利用した縮退動作を行う画像形成装置
JP2008131603A (ja) 画像処理装置及び画像処理方法
JP2007293737A (ja) ソフトウェア資源の登録管理方法、電子機器、プログラム
US9772905B2 (en) Updating control firmware of information processing apparatus, method of controlling the same, and storage medium
JP7367434B2 (ja) 電子機器、電子機器の制御方法および電子機器の制御プログラム
JP2011229209A (ja) 制御装置及びこれを備えた画像形成装置
JP2011008568A (ja) 電子機器、電源の制御方法および制御プログラム
JP6459543B2 (ja) 画像形成装置及びジョブ処理制御方法並びにジョブ処理制御プログラム
US20240103956A1 (en) Control apparatus, control method, image processing apparatus, and non-transitory computer readable medium
JP7284629B2 (ja) 画像形成装置、画像形成装置におけるユニット管理プログラムおよびユニット管理方法
US11930144B2 (en) Energy-saving information processing apparatus, image forming apparatus, and method for controlling energy-saving information processing apparatus
JP2013250911A (ja) 画像形成装置、画像形成装置の制御方法およびコンピュータプログラム
US20240103782A1 (en) Image forming apparatus and control method for image forming apparatus
JP5932511B2 (ja) 情報処理装置、ソフトウェアの更新方法及びコンピュータプログラム
JP2023177238A (ja) 情報処理装置、画像形成装置、情報処理方法、およびプログラム
US20230185710A1 (en) Information processing apparatus and method of controlling information processing apparatus
US20230081383A1 (en) Control device, control method, and non-transitory computer readable medium
US11194279B2 (en) Power supply and image forming apparatus incorporating same
JP4948862B2 (ja) 画像形成装置
JP7218562B2 (ja) 電子機器、電源制御システム、電源制御方法およびプログラム
JP2011053775A (ja) 印刷システム、起動プログラム自動復旧方法、及び自動復旧制御プログラム
CN115865750A (zh) 控制装置、图像形成装置、存储介质、控制方法及图像形成方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220721

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230912

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230925

R151 Written notification of patent or utility model registration

Ref document number: 7367434

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151