(57)【要約】【課題】システム起動時のメモリチェックを省略することなく、システム起動時間をより短縮し、より早期にメモリの故障検出を行えるようにする。【解決手段】電源投入後、メモリチェックプログラムＰ１を起動させてＲＡＭの全記憶領域のうち、システムプログラムを起動するのに必要な領域のみに対しメモリチェックを行う（Ｓ０、Ｓ１）。次に、マルチタスクオペレーティングシステムを起動させ（Ｓ４）、その下でメインプログラムとメモリチェックプログラムＰ６とを起動させて両者を並列処理させる（Ｓ５、Ｓ６）。【選択図】図３
2007140920.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサと、
該プロセッに結合された記憶手段と、
を有し、該記憶手段は、揮発性メモリと、システム初期化前までのシステム起動に必要な揮発性メモリ記憶領域を含む該領域と実質的に同一な第１領域の情報とチェックデータとプログラムとが格納された不揮発性記憶部とを有し、
該プログラムは該プロセッサに対し、電源投入後、
（ａ）該揮発性メモリの該第１領域のみに対し、該チェックデータを書き込み読み出してこれを書き込みデータと比較させ、
（ｂ）該比較の結果に不一致がなければシステムを起動させる、
ことを特徴とする画像形成装置。
【請求項２】
該プログラムは該プロセッサに対し、システムを初期化させながら、該揮発性メモリの該第１領域と連なる第２領域に対し、該チェックデータを書き込み読み出してこれを書き込みデータと比較させる、
ことを特徴とする請求項１記載の画像形成装置。
【請求項３】
該第２領域は、該システムの初期化に必要な領域であることを特徴とする請求項２に記載の画像形成装置。
【請求項４】
該第２領域は、該揮発性メモリの全記憶容量のうち、該第１領域を除いた全ての領域であることを特徴とする請求項２に記載の画像形成装置。
【請求項５】
プロセッサと、
該プロセッに結合された記憶手段と、
を有し、該記憶手段は、揮発性メモリと、該揮発性メモリの第１領域と残りの第２領域とを示す情報とチェックデータとプログラムとが格納された不揮発性記憶部とを有し、
該プログラムは該プロセッサに対し、電源投入後、
（ａ）該揮発性メモリの該第１領域のみに対し、該チェックデータを書き込み読み出してこれを書き込みデータと比較させ、
（ｂ）該比較の結果に不一致がなければシステムを起動させ、システムを初期化させながら、該揮発性メモリの該第２領域に対し、該チェックデータを書き込み読み出してこれを書き込みデータと比較させる、
ことを特徴とする画像形成装置。
【請求項６】
該第１領域は、システム初期化前までの該システム起動に必要な揮発性メモリ記憶領域を含む該領域と実質的に同一な領域であることを特徴とする請求項５に記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、用紙を搬送して用紙に画像を形成する、プリンタ、複写機、ファクシミリ又は複合機等の画像形成装置に係り、特に、大容量のメモリを搭載した場合に好適な画像形成装置に関する。
【背景技術】
【０００２】
画像形成装置では、搭載メモリの全ビットに対してメモリエラーチェックが行われ、正常であることを確認してシステムが起動される。
【０００３】
一方、形成画像の高解像度化及びカラー化並びにメモリの安価化に伴い、装置に搭載されるメモリの大容量化が進んでいる。
【０００４】
このため、メモリエラーチェック時間が数分にも及ぶ場合があり、ユーザに不快感を与えることになる。
【０００５】
他方、メモリの製造及び検査技術の進歩により、メモリの信頼性が向上している。メモリエラーチェックでエラーとなる原因の多くは、メモリに長期間熱が加わることによる劣化と、メモリの増設や取り外しが行われたときの端子接触不良である。
【０００６】
そこで、下記特許文献１では、システム起動時のメモリエラーチェックを原則として行わず、用紙の合計処理枚数が設定値以上であった場合及びメモリの記憶容量が前回起動時と異なる場合のみ、メモリエラーチェックを行うことが提案されている。
【０００７】
この方法によれば、メモリ故障が生ずる可能性が比較的高い場合のみメモリエラーチェックが行われるので、無駄なメモリエラーチェック処理が省略され、ユーザの不快感を解消させることができる。
【０００８】
しかしながら、全記憶容量のうち１ビットでも故障すれば問題となる場合があり、メモリ容量増大に比例してメモリエラーチェックでエラーとなる確率が増加する。また、メモリによっては、用紙の合計処理枚数が設定値以下であっても、製造上の原因により初期故障が生ずる場合がある。
【０００９】
プログラムが暴走したり、画質が部分的に悪い場合には、その原因がメモリの故障であるのか否かが容易に分からないため、原因を究明してそれに対処するまでの時間が長くなる場合がある。
【００１０】
そこで、下記特許文献２では、メモリエラーチェック対象の記憶領域を第１の領域と第２の領域とに２分割し、電源投入時には第１の領域のみメモリエラーチェックを行い、第２の領域は空き時間にメモリエラーチェックを行うことが提案されている。
【特許文献１】特開２００４−１７８３８７号公報
【特許文献２】特開平３−１７１３４９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、システム起動後空き時間を見つけるまでの間にメモリエラーチェックを行うことができないので、メモリの故障検出が遅れる場合がある。また、第１の領域を入力バッファエリア又はこれとワークエリアとしており、最小領域ではない。
【００１２】
本発明は、このような問題点に鑑み、システム起動時のメモリエラーチェックを省略することなく、システム起動時間をより短縮することができる画像形成装置を提供することにある。
【００１３】
本発明の他の目的は、システム起動時のメモリエラーチェックを省略することなく、システム起動時間を短縮することができるとともに、より早期にメモリの故障検出を行うことが可能な画像形成装置を提供することにある。
【課題を解決するための手段】
【００１４】
本発明による画像形成装置の第１態様では、
プロセッサと、
該プロセッに結合された記憶手段と、
を有し、該記憶手段は、揮発性メモリと、システム初期化前までのシステム起動に必要な揮発性メモリ記憶領域を含む該領域と実質的に同一な第１領域の情報とチェックデータとプログラムとが格納された不揮発性記憶部とを有し、
該プログラムは該プロセッサに対し、電源投入後、
（ａ）該揮発性メモリの該第１領域のみに対し、該チェックデータを書き込み読み出してこれを書き込みデータと比較させ、
（ｂ）該比較の結果に不一致がなければシステムを起動させる。
【００１５】
本発明による画像形成装置の第２態様では、
プロセッサと、
該プロセッに結合された記憶手段と、
を有し、該記憶手段は、揮発性メモリと、該揮発性メモリの第１領域と残りの第２領域とを示す情報とチェックデータとプログラムとが格納された不揮発性記憶部とを有し、
該プログラムは該プロセッサに対し、電源投入後、
（ａ）該揮発性メモリの該第１領域のみに対し、該チェックデータを書き込み読み出してこれを書き込みデータと比較させ、
（ｂ）該比較の結果に不一致がなければシステムを起動させ、システムを初期化させながら、該揮発性メモリの該第２領域に対し、該チェックデータを書き込み読み出してこれを書き込みデータと比較させる。
【発明の効果】
【００１６】
上記第１態様の構成によれば、電源投入後システム起動前において、システム起動に必要な揮発性メモリ記憶領域を含む該領域と実質的に同一な第１領域のみメモリエラーチェックが行われるので、揮発性メモリが大容量であってもその容量によらず、システムを安定に且つより短時間で起動させることが可能となる。
【００１７】
上記第２態様の構成によれば、メモリエラーチェックを行いながらシステム起動後に直ちに画像形成装置の操作信号又は画像形成装置の外部からの信号を受付可能となり、揮発性メモリが大容量であってもユーザに不快感を与えるのを回避するとともに、メモリの故障をより早期に検出することができ、この早期検出により、プログラムが暴走したり、画質が部分的に悪い場合には、その原因をより早期に究明して、対処するまでの時間を短縮することが可能となる。
【００１８】
本発明の他の目的、構成及び効果は以下の説明から明らかになる。
【実施例１】
【００１９】
図１は、本発明の実施例１に係る画像形成装置のハードウェア構成を示す概略ブロック図である。
【００２０】
この画像形成装置１０は、制御装置１１に操作・表示部１２及び画像形成装置本体１３が結合されて構成されており、制御装置１１は、操作・表示部１２で設定された情報やディフォルトの設定値に基づいて、画像形成装置本体１３で読み取られた原稿画像を処理し、又は、外部のホストコンピュータ２０から供給される設定情報及び画像データに基づいて、画像形成装置本体１３に対し画像を形成させる。
【００２１】
制御装置１１は、ＭＰＵ１１０に不揮発性メモリ１１１、揮発性メモリ１１２及びインタフェース１１３〜１１５がバスで結合され、インタフェース１１３〜１１５はそれぞれ操作・表示部１２、画像形成装置本体１３及びホストコンピュータ２０に結合されている。不揮発性メモリ１１１には、プログラム及びシステムの初期値等のデータが格納されている。
【００２２】
図２は、不揮発性メモリ１１１及び揮発性メモリ１１２の概略メモリマップを示す。
【００２３】
不揮発性メモリ１１１には、ブートストラップＰ０、メモリエラーチェックプログラムＰ１、オペレーティングシステムＰ２、起動プログラムＰ３、メインプログラムＰ４、イベントハンドラ群Ｐ５及びメモリエラーチェックプログラムＰ６が格納されている。これらは、正確にはオブジェクトであり、それぞれ、プログラムの実行に必要な定数データを含んでいるが、説明の簡単化の為に、単にプログラムと称すことにする。メインプログラムＰ４とイベントハンドラ群Ｐ５とでプリンタ、複写機、スキャナ、ファックス又は複合機のアプリケーションが構成されている。
【００２４】
ブートストラップＰ０は、メモリエラーチェックプログラムＰ１及びオペレーティングシステムＰ２を起動させるためのものである。
【００２５】
オペレーティングシステムＰ２は、マルチタスク処理機能を有し、例えばＢＴＲＯＮである。このオペレーティングシステムＰ２上で、起動プログラムＰ３、メインプログラムＰ４、イベントハンドラ群Ｐ５及びメモリエラーチェックプログラムＰ６が動作し、これらは並列処理可能である。
【００２６】
メインプログラムＰ４は、システムの初期化処理を行って、イベント発生待ち状態、すなわち、操作・表示部１２又はホストコンピュータ２０からの信号入力待ち状態となる。イベントハンドラ（イベント処理プログラム）群Ｐ５は、操作・表示部１２またはホストコンピュータ２０からの入力に応答し、又はソフトウェア割込により、該当するものが起動される。
【００２７】
メモリエラーチェックプログラムＰ６は、メモリエラーチェックプログラムＰ１の本体部分を用いることができる。
【００２８】
揮発性メモリ１１２の領域Ａ０は、プログラムＰ２〜Ｐ６からなるシステムプログラムを起動するのに必要な領域（メインプログラムＰ４によるシステム初期化に必要な領域を除く）であり、これに続く領域Ａ１は、メインプログラムＰ４によるシステム初期化に必要な領域である。これに続く領域Ａ２は、揮発性メモリ１１２の残りの部分である。
【００２９】
メインプログラムＰ４には、操作・表示部１２で設定される値の初期値、フラグの初期値及び周辺機器初期化用の値が格納されており、これらの値を動作に応じて変化可能にするため、メインプログラムＰ４によるシステム初期化処理でこれらの値が領域Ａ１に書き込まれる。
【００３０】
図３は、電源投入時の処理を示すフローチャートである。以下、括弧内は図中のステップ識別符号である。
【００３１】
まず、ブートストラップＰ０が起動され、これによりメモリエラーチェックプログラムＰ１が呼び出されて、以下のステップＳ０〜Ｓ３の処理が行われる。
【００３２】
（Ｓ０）メモリエラーチェックプログラムＰ１に格納されている上記領域Ａ０のアドレス範囲が読み出される。
【００３３】
（Ｓ１）この範囲について、メモリエラーチェックが行われる。すなわち、メモリエラーチェックプログラムＰ１に格納されたチェック用データ、例えば‘０１０１０１０１’が揮発性メモリ１１２に書き込まれ、これが読み出されて、書き込みデータと比較される。同様に、‘１０１０１０１０’が揮発性メモリ１１２に書き込まれ、これが読み出されて、書き込みデータと比較される。
【００３４】
（Ｓ２）ステップＳ１でエラーが検出された場合には、すなわち比較結果に不一致があればステップＳ３へ進み、そうでなければステップＳ４へ進む。
【００３５】
（Ｓ３）どのメモリカードを取り換える必要があるかをユーザに知らせるために、揮発性メモリ１１２の領域Ａ１及びＡ２についても、上記同様にメモリエラーチェックを行い、ステップＳ８へ進む。
【００３６】
（Ｓ４）ブートストラップＰ０は次に、オペレーティングシステムＰ２を起動させる。
【００３７】
（Ｓ５、Ｓ６）このオペレーティングシステムＰ２は、その立ち上げ後に起動プログラムＰ３が起動するように設定されている。この起動プログラムＰ３の起動により、メインプログラムＰ４とメモリエラーチェックプログラムＰ６とが起動される。これらのプログラムＰ４及びＰ６は、オペレーティングシステムＰ２により時分割並列処理される。
【００３８】
図４は、上記並列処理時におけるメモリエラーチェックプログラムＰ６の処理の説明図である。この処理では、ブロック単位、例えば４ＫＢ単位でメモリエラーチェックが行われ、例えばブロック３０をメモリエラーチェックする場合には、まずその内容を、ブロック３０と同じ広さの領域３１に退避させ、ブロック３０に対し上述のようにしてメモリエラーチェックを行い、退避した領域３１の内容をブロック３０に書き込み、エラーが検出されれば、その旨及びメモリエラーチェック中であることを操作・表示部１２に表示するとともに、操作・表示部１２又はホストコンピュータ２０からの信号受付を禁止（割込マスクをセット）する。
【００３９】
メインプログラムＰ４とメモリエラーチェックプログラムＰ６とが並列処理されているときにイベントが発生すると、イベントハンドラ群Ｐ５のうちの該当するものがこれらと共に時分割並列処理される。
【００４０】
図５は、時分割並列処理のタイムチャートである。メインプログラムＰ４による初期化処理中は、操作・表示部１２又はホストコンピュータ２０からの信号（時刻ｔ１）の受け付けがフラグで記憶され、この初期化処理後（時刻ｔ２）に、フラグがスキャンされ、セットされたフラグに対応したイベントに対する処理が開始される。
【００４１】
したがって、メインプログラムＰ４が実行されながら操作・表示部１２又はホストコンピュータ２０からの信号の受け付けが可能となる。
【００４２】
ステップＳ５の処理が終了すると、ステップＳ７へ進む。通常の容量のメモリ実装状態では、ステップＳ５よりもステップＳ６による初期化処理の方が先に終了し、操作・表示部１２又はホストコンピュータ２０からの信号待ち状態となる。
【００４３】
（Ｓ７）メモリエラーチェックでエラーが検出され無かった場合には、メモリエラーチェック処理を終了し、そうでなければステップＳ８へ進む。
【００４４】
（Ｓ８）エラーが検出された揮発性メモリ１１２のアドレス等のエラー情報を操作・表示部１２に表示させ、また、処理の続行又は終了をユーザの選択に委ねる。操作・表示部１２の操作によりユーザが処理続行を選択した場合には、エラーチェックに関する処理を終了し、操作・表示部１２又はホストコンピュータ２０からの信号受付禁止を解除（割込マスクをリセット）する。ユーザが処理終了を選択した場合には、電源を遮断するようにしてもよい。
【００４５】
本実施例１によれば、電源投入後、メモリエラーチェックプログラムＰ１を起動させて揮発性メモリ１１２の全記憶領域のうち、プログラムＰ２〜Ｐ６からなるシステムプログラムを起動するのに必要な領域Ａ０（メインプログラムＰ４によるシステム初期化に必要な領域を除く）のみに対し、チェックデータを書き込み読み出してこれを書き込みデータと比較させ、その結果に不一致がなければシステムプログラムを起動させるので、揮発性メモリ１１２が大容量であってもその容量によらず、システムを安定に且つより短時間で起動させることができる。
【００４６】
また、マルチタスクオペレーティングシステムＰ２の下でメインプログラムＰ４とメモリエラーチェックプログラムＰ６とが起動されて両者が並列処理されるので、メモリエラーチェックを行いながらシステム起動後に直ちに操作・表示部１２又はホストコンピュータ２０からの信号を受付可能となり、揮発性メモリ１１２が大容量であってもユーザに不快感を与えるのを回避するとともに、メモリの故障をより早期に検出することができる。この早期検出により、プログラムが暴走したり、画質が部分的に悪い場合には、その原因をより早期に究明して、対処するまでの時間を短縮することが可能となる。
【００４７】
なお、本発明には外にも種々の変形例が含まれる。
【００４８】
例えば、電源投入時のメモリエラーチェック対象である第１領域として、上記実施例ではシステムプログラムの起動に必要な揮発性メモリ記憶領域という最も好ましい場合を説明したが、例えばこの領域が１０％増えても実質的に同じ効果が得られるので、システムプログラムの起動に必要な揮発性メモリ記憶領域を含む該領域と実質的に同一な領域であればよい。
また、一般に電源投入時にシステムリセットが行われるので、本明細書及び特許請求の範囲において、「電源投入時」は「電源投入時又はシステムリセット時」を含む意味である。
【００４９】
また、上記実施例ではシステムプログラムが不揮発性メモリ１１１に格納されている場合を説明したが、システムプログラムは不揮発性記憶装置に格納されていればよく、ハードディスク等の外部記憶装置に格納された場合であってもよい。この場合、システム起動時にシステムプログラムがメインメモリにロードされるので、その分、上記領域Ａ０が広くなる。
【００５０】
以上の説明から明らかなように、本発明には以下のような態様が含まれる。
【００５１】
態様１：
プロセッサと、
該プロセッに結合された記憶手段と、
を有し、該記憶手段は、揮発性メモリと、システムプログラム起動に必要な揮発性メモリ記憶領域を含む該領域と実質的に同一な第１領域の情報とチェックデータとプログラムとが格納された不揮発性記憶部とを有し、
該プログラムは、第１の起動プログラムと、第１のメモリエラーチェックプログラムと、該システムプログラムとを有し、
該第１の起動プログラムは該プロセッサに対し、電源投入後、
（ａ）該第１のメモリエラーチェックプログラムを起動させて該揮発性メモリの該第１領域のみに対し、該チェックデータを書き込み読み出してこれを書き込みデータと比較させ、
（ｂ）該比較の結果に不一致がなければ該システムプログラムを起動させる、
ことを特徴とする画像形成装置。
【００５２】
態様２
該システムプログラムは、マルチタスクオペレーティングシステムと、該マルチタスクオペレーティングシステム上で動作するメインプログラム、第２の起動プログラム及び第２のメモリエラーチェックプログラムとを有し、該第２の起動プログラムは自動起動され、
該第２の起動プログラムは該プロセッサに対し、該メインプログラムと該第２のメモリエラーチェックプログラムとを並列起動させ、
該第２のメモリエラーチェックプログラムによりメモリエラーチェックされる領域は、該揮発性メモリの該第１領域と連なる第２領域である、
ことを特徴とする態様１記載の画像形成装置。
【００５３】
態様３：
該第２領域は、該メインプログラムがシステム初期化処理で初期化する領域であることを特徴とする態様２に記載の画像形成装置。
【００５４】
態様４：
該第２領域は、該揮発性メモリの全記憶容量のうち、該第１領域を除いた全ての領域であることを特徴とする態様２に記載の画像形成装置。
【００５５】
態様５：
プロセッサと、
該プロセッに結合された記憶手段と、
を有し、該記憶手段は、揮発性メモリと、該揮発性メモリの第１領域と残りの第２領域とを示す情報とチェックデータとプログラムとが格納された不揮発性記憶部とを有し、
該プログラムは、第１の起動プログラムと、第１のメモリエラーチェックプログラムと、システムプログラムとを有し、
該システムプログラムは、マルチタスクオペレーティングシステムと、該マルチタスクオペレーティングシステム上で動作するメインプログラム、第２の起動プログラム及び第２のメモリエラーチェックプログラムとを有し、該第２の起動プログラムは自動起動され、
該第１の起動プログラムは該プロセッサに対し、電源投入後、
（ａ）該第１のメモリエラーチェックプログラムを起動させて該揮発性メモリの該第１領域のみに対し、該チェックデータを書き込み読み出してこれを書き込みデータと比較させ、
（ｂ）該比較の結果に不一致がなければ該システムプログラムを起動させ、
該第２の起動プログラムは該プロセッサに対し、該メインプログラムと該第２のメモリエラーチェックプログラムとを並列起動させる、
ことを特徴とする画像形成装置。
【００５６】
態様６：
該第１領域は、該システムプログラムの起動に必要な揮発性メモリ記憶領域を含む該領域と実質的に同一な領域であることを特徴とする態様５に記載の画像形成装置。
【図面の簡単な説明】
【００５７】
【図１】本発明の実施例１に係る画像形成装置のハードウェア構成を示す概略ブロック図である。
【図２】不揮発性メモリ及び揮発性メモリの概略メモリマップである。
【図３】電源投入時の処理を示すフローチャートである。
【図４】他の処理と時分割並列処理される場合のメモリエラーチェック説明図である。
【図５】メモリエラーチェックが初期化処理及びイベント受付処理と時分割並列処理されることを示す概略タイムチャートである。
【符号の説明】
【００５８】
１０  画像形成装置
１１  制御装置
１１０  ＭＰＵ
１１１  不揮発性メモリ
１１２  揮発性メモリ
１１３〜１１５  インタフェース
１２  操作・表示部
１３  画像形成装置本体
２０  ホストコンピュータ
Ａ０〜Ａ２  領域
３０  ブロック
３１  領域
Ｐ０  ブートストラップ
Ｐ１、Ｐ６  メモリエラーチェックプログラム
Ｐ２  オペレーティングシステム
Ｐ３  起動プログラム
Ｐ４  メインプログラム
Ｐ５  イベントハンドラ
【図１】
2007140920.tif 000003
【図２】
2007140920.tif 000004
【図３】
2007140920.tif 000005
【図４】
2007140920.tif 000006
【図５】
2007140920.tif 000007