(57)【要約】【課題】  sleep / wake up又は通常起動時の際に退避 / 復帰するメモリとレジスタの情報には、必要/不必要な情報が混在するにもかかわらず全て退避 / 復帰するため、メモリが大容量になればなるほど退避/復帰に時間がかかることです。また同時に、データ待避が必要十分でなければ、データ退避後に機器構成情報が変更された場合、正しく復帰できません。【解決手段】  sleep / wake up 時、又は終了 / 起動時、又は起動完了直後に、メモリの内容を細分化することで復帰に必要 / 不必要を判断し、必要十分な情報のみ退避 / 復帰します。【選択図】  図１
2007038580.tif 000002
【特許請求の範囲】
【請求項１】
中央演算装置やデバイス等のレジスタと、メモリ等の揮発性記憶装置と、不揮発メモリや外部記憶装置等の不揮発性記憶装置を持つプログラム実行型のコンピュータ装置において、
該揮発性記憶装置をプログラム領域、データ領域、画像領域等の一時記憶領域、未使用領域に分割し、通常状態からスリープ状態又はシステム停止状態へ遷移する前に該データ領域及び該レジスタを該不揮発性記憶装置に格納し、スリープ状態又はシステム停止状態から通常状態へ遷移する際に格納した該データ領域と該レジスタ、及び該不揮発記憶装置にあらかじめ格納している実行形式のプログラムを展開し、該展開した情報を用いて復帰することを特徴とする、コンピュータ装置。
【請求項２】
該外部記憶装置は、コンピュータ内蔵型、コンピュータ外部接続型、ネットワーク経由接続型であることを特徴とする、請求項１記載のコンピュータ装置。
【請求項３】
復帰する際にプログラムとデータの整合性をチェックし、異なっていれば該データを使わずに起動することを特徴とする、請求項１記載のコンピュータ装置。
【請求項４】
起動時に機器構成情報を収集且つ退避し、再起動時は退避した該機器構成情報を用いて起動すること
を特徴とする、コンピュータ装置。
【請求項５】
起動時に、退避されている該機器構成情報と収集した機器構成情報が異なっていた場合は、退避させた機器情報領域に収集した機器情報を上書きし該当箇所及び影響範囲箇所を再初期化、又は、退避させた該機器構成情報領域をクリアして再起動することを特徴とする、
請求項４記載のコンピュータ装置。
【請求項６】
該機器構成情報とは、オプション機器の有無の情報、オプション機器の応答時間情報、ハードウェア資源情報、メモリ構成・システム資源・アルゴリズム資源等のソフトウェア資源情報、画像構造化記述言語情報、製品対象国情報、製品を一意に特定する情報、ユーザ設定情報、プログラムバージョン情報等の一つ以上であることを特徴とする、
請求項４記載のコンピュータ装置。
【請求項７】
該機器構成情報の退避先は、外部記憶装置、不揮発メモリ、揮発メモリ、レジスタの一つ以上であることを特徴とする、
請求項４記載のコンピュータ装置。
【請求項８】
スリープ又は電源ＯＦＦ時に該揮発メモリ及び該レジスタが通電しているならば、該揮発メモリ及び該レジスタへデータを保存することができることを特徴とする、
請求項７記載のコンピュータ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置を含むコンピュータ等のデータ退避・復帰方法に関する。
【背景技術】
【０００２】
画像形成装置を含むコンピュータ装置が持つ sleep(suspend/hibernation) / wake up の機能は、低電力での待機を可能にし、通常起動よりも早い復帰を行う事を特徴としています。復帰方法は、(1) 不揮発性メモリを使って復帰する方法と、(2) sleep の際に揮発性メモリの電源を off にせず復帰する方法と、(3) 揮発性メモリとレジスタの内容をダンプして退避/復帰する方法が提案されています。(1) は高コストであり、(2) は低電力化が難しいため、(3) が最良な方法です。しかし(3)は、メモリが大容量になればなるほど wake up 時に退避データをメモリへ展開する時間がかかるため、実用的ではありません。
【０００３】
また、近年、画像形成装置の機能拡張に伴い画像形成装置のソフトウェアは大規模かつ複雑になり、それに伴い起動時間が長くなってきています。起動時間が長くなる原因の一つに、起動時に機器構成を確定する際にコントローラからオプション装置に問い合わせを行いますが、オプション装置のハードウェア初期化に時間がかかり応答が遅れることがあります。これによって、コントローラでは長期間のハードウェア待ちが発生し、起動時間がかかる原因になっています。
【０００４】
起動時間を短縮する方法には、以下の方法が提案されています。
【０００５】
特開平３−２７８１２６は、主記憶イメージを退避し、再起動の際は退避イメージを主記憶に展開することで、システムを立ち上げ直後の状態に復帰する方法に関する発明です。しかし前記発明は、不必要な領域までバックアップし、また、ハードウェアレジスタ値などの情報をバックアップしていないため、必要十分の情報を得ることができません。
【０００６】
特開平１０−２９３６８２（日本電気（株））は、起動後のシステムの状態を保存しているメモリを再起動時に直接使って、システムを高速に立ち上げる起動方法に関する発明です。しかし前記発明は、システム領域のバックアップのためにメモリ上に同じ内容を保持する2つの領域が必要となり、メモリ利用効率が良くありません。
【０００７】
特開２００２−２９７３９１（キヤノン（株））は、圧縮された本体プログラムと、伸張及び入力処理を含むブートプログラムにおいて、伸張処理より前に入力処理を実行する事を特徴とする、システムを高速に立ち上げる起動方法に関する発明です。しかし前記発明は、起動情報のバックアップ処理を行っていないため、起動の度に本体プログラムとブートプログラムを立ち上げなおす必要があり、起動時間を短時間しか短縮できません。
【０００８】
特許２７７９８１３号（セイコーエプソン（株）、特許庁の最終判断は「取消」）は、コンピュータの中断の際に、ハードウェアレジスタを含むメインメモリの内容、ＣＰＵステータス、入出力部の設定を不揮発メモリにバックアップし、再開の際に前記３要素をリストアして処理を継続することを特徴とする、コンピュータに関する発明です。しかし前記発明は、メモリ上にある不要な領域までバックアップするため退避・復帰に時間がかかるだけでなく、復帰前と復帰後のハードウェア構成に変更があった場合に対応できません。
【０００９】
本提案はこのような状況に鑑みて実施される、コンピュータ装置の起動時間短縮に関する発明です。
【特許文献１】特開平３−２７８１２６号公報
【特許文献２】特開平１０−２９３６８２号公報
【特許文献３】特開２００２−２９７３９１号公報
【特許文献４】特登録２７７９８１３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
前記より、既存の問題は、sleep / wake up又は通常起動時の際に退避 / 復帰するメモリとレジスタの情報には、必要/不必要な情報が混在するにもかかわらず全て退避 / 復帰するため、メモリが大容量になればなるほど退避/復帰に時間がかかることです。また同時に、データ待避が必要十分でなければ、データ退避後に機器構成情報が変更された場合、正しく復帰できません。
【課題を解決するための手段】
【００１１】
そこで本発明は、sleep / wake up 時、又は終了 / 起動時、又は起動完了直後に、メモリの内容を細分化することで復帰に必要 / 不必要を判断し、必要十分な情報のみ退避 / 復帰します。具体的に言うと、sleep の際にメモリ上の領域をチェックし、(1) プログラム領域(text)、(2) データ領域(data, rodata, bss, stack, heap)、(3) バックアップ装置への保存可能領域(画像メモリ)、(4) 未使用領域に分離し、sleep の時は (2)(3) とレジスタのみ退避させ、wake up の時はHDDやROM等に保存されている実行形式のオブジェクト(ELF形式ファイル、又はバイナリファイル等)と(2)のみ展開します。
【００１２】
また同時に、起動時に機器構成情報を収集且つ退避し、再起動時にハードウェア構成情報の問い合わせ応答を受信する前に、退避した該機器構成情報を用いて起動処理を実行します。また、再起動時に、退避した該機器構成情報と収集した機器構成情報が異なっていた場合は、該当箇所のみ再初期化、又は退避情報をクリアして再起動します。
【００１３】
機器構成情報とは、オプション機器の有無の情報、オプション機器の応答時間情報、ハードウェア資源情報、メモリ構成・システム資源・アルゴリズム資源（タスク、セマフォ・モニタ等の排他制御、キュー、リスト等）等のソフトウェア資源情報、製品が持つラスタ・ベクタ記述言語等の画像構造化記述言語情報、製品対象国情報、製品を一意に特定する情報、ユーザ設定情報、等の一つ以上です。オプション装置とは、プリンタ等の画像印刷装置、ADF等の画像読取装置、フィニッシャ・トリマ・サドル・スタッカ・グルーバインド等の用紙加工出力装置、FAXボード・ネットワークボード等の通信装置、オプションボード等を持つ画像形成装置、等の一つ以上です。
【００１４】
機器構成情報の退避場所は、不揮発メモリ、ＨＤＤ、揮発メモリ、レジスタの一つ以上です。揮発メモリやレジスタはスリープ時にＣＰＵ・メモリが通電している場合のみ退避可能です。また、HDDは初期化に時間がかかり起動時間の長期化に影響する可能性があるため、機器構成情報が不揮発メモリ容量に収まるならば不揮発メモリに保存することをより好みます。
【発明の効果】
【００１５】
前記方法を実施することにより、コンピュータ装置はスリープ状態から短時間で復帰することができます。また、スリープ復帰と同じルーチンで通常起動も高速化することができます。
【発明を実施するための最良の形態】
【００１６】
以下、本発明とその他の特徴について適宜図面を参照しながら解説する。
【００１７】
（１）ハードウェア構成
本発明の実施例にかかわる画像入出力システムのハードウェア全体構成を、図1を参照しながら説明する。
【００１８】
リーダー部(画像入力装置)200は、原稿画像を光学的に読み取り、画像データに変換する。リーダー部200は、原稿を読取るための機能を持つスキャナユニット210と、原稿用紙を搬送するための機能を持つ原稿給紙ユニット250(以下フィーダと呼ぶ)とで構成される。
【００１９】
プリンタ部(画像出力装置)300は、記録紙を搬送し、その上に画像データを可視画像として印字して装置外に排紙する。プリンタ部300は、複数種類の記録紙カセットを持つ給紙ユニット310と、画像データを記録紙に転写、定着させる機能を持つマーキングユニット320と、印字された記録紙をソート、ステイプルして機外へ出力する機能を持つ排紙ユニット330とで構成される。
【００２０】
制御装置110は、リーダー部200、プリンタ部300、FAXモデム510、HDD(ハードディスクドライブ)520と電気的に接続され、さらにネットワーク400を介して、ホストコンピュータ401,402と画像入出力システム101、及び、FAXモデム510、電話回線500を介してFAX501,502と接続されている。
【００２１】
制御装置110は、リーダー部200を制御して、原稿の画像データを読込み、プリンタ部300を制御して画像データを記録用紙に出力してコピー機能を提供する。また、リーダー部200から読取った画像データを、コードデータに変換し、ネットワーク400を介してホストコンピュータへ送信するスキャナ機能、ホストコンピュータからネットワーク400を介して受信したコードデータを画像データに変換し、プリンタ部300に出力するプリンタ機能、入力された画像データをFAXモデム510と電話回線500を介して送受信するFAX機能、送受信した画像データをHDD520に蓄積するボックス機能を提供する。
【００２２】
続いて図2を用いて操作部150について説明する。
【００２３】
操作部150は、制御装置110に接続され、液晶タッチパネルで構成され、画像入出力システムを操作するためのユーザI/Fを提供する。
【００２４】
600はLCDタッチパネルであり、主なモード設定、状況表示はここで行われる。601は０〜９までの数値を入力するためのテンキーである。602はIDキーであり、装置が部門管理されている場合に部門番号と暗礁モードを入力する際に使用されるものである。
【００２５】
603は設定されたモードをリセットするためのリセットキー、604は各モードについての説明画面を表示するためのガイドキー、605はユーザーモード画面に入るためのユーザーモードキー、606は割り込みコピーを行うための割り込みキーになっている。
【００２６】
607はコピー動作をスタートさせるためのスタートキー、608は実行中のコピージョブを中止させるためのストップキーである。
【００２７】
609はソフト電源SWであり、押下することによりLCD600のバックライトが消え装置は低電力状態に落ちる。610は節電キーであり、これを押下することで節電状態に入り、再度押下することで節電状態から復帰する。
【００２８】
611、612、613、614はコピー、送信、ボックス、拡張に移行させるためのファンクションキーである。図2ではコピーの標準画面が表示された状態であり、他のファンクションキー612、613、614を押下することでそれぞれの機能の標準画面が表示される。
【００２９】
615はLCDタッチパネルのコントラストを調整するための調整キーである。
【００３０】
616はカウンタ確認キーであり、このキーを押下することでそれまでに仕様したコピー枚数の集計を表示するカウント画面がLCD上に表示される。
【００３１】
617はジョブの実行中、画像メモリへの画像蓄積中を示すLED、618がジャム、ドアオープン等装置がエラー状態にあることを示すエラーLED、619は装置のメインスイッチがONになっていることを示す電源LEDになっている。
【００３２】
図３はリーダー部200及びプリンタ部300の断面図である。リーダー部の原稿給送ユニット250は原稿を先頭順に1枚ずつプラテンガラス211上へ給送し、原稿の読み取り動作終了後、プラテンガラス211上の原稿を排出トレイ219に排出するものである。原稿がプラテンガラス211上に搬送されると、ランプ212を点灯し、そして光学ユニット213の移動を開始させて、原稿を露光走査する。この時の原稿からの反射光は、ミラー214、215、216、及びレンズ217によってCCDイメージセンサ(以下CCDと呼ぶ)218へ導かれる。このように、走査された原稿の画像はCCD218によって読み取られる。CCD218から出力される画像データは、所定の処理が施された後、制御装置110へ転送される。
【００３３】
プリンタ部300のレーザドライバ321はレーザ発光部322を駆動するものであり、制御装置110から出力された画像データに応じたレーザ光をレーザ発光部322に発光させる。このレーザ光は感光ドラム323に照射され、感光ドラム323にはレーザ光に応じた潜像が形成される。この感光ドラム323の潜像の部分には現像器324によって現像剤が付着される。
【００３４】
そして、レーザ光の照射開始と同期したタイミングで、カセット311、カセット312、カセット313、カセット314、手差し給紙段315のいずれかから記録紙を給紙し、転写部325へ搬送路331によって導かれ、感光ドラム323に付着された現像剤を記録紙に転写する。現像剤の乗った記録紙は搬送ベルト326によって、定着部327に搬送され、定着部327の熱と圧力により現像剤は記像紙に定着される。その後、定着部327を通過した記録紙は搬送路325、搬送路324を通り、排紙ビン328に排出される。あるいは、印字面を反転して排紙ビン328に排出する場合には、搬送路336、搬送路338まで導かれ、そこから記録紙を逆方向に搬送し、搬送路337、搬送路324を通る。
【００３５】
また、両面記録が設定されている場合は、定着部327を通過したあと、搬送路336からフラッパ329によって、搬送路333に記録紙は導かれ、その後記録紙を逆方向に搬送し、フラッパ329によって、搬送路338、再給紙搬送路332へ導かれる。再給紙搬送路332へ導かれた記録紙は上述したタイミングで搬送路331を通り、転写部325へ給紙される。
【００３６】
以下、制御装置の詳細について述べる。
【００３７】
（１−１）制御装置の説明
制御装置110の機能を、図４に示すブロック図をもとに説明する。
【００３８】
メインコントローラ111は、主にCPU112と、バスコントローラ113、各種I/Fコントローラ回路とから構成される。
【００３９】
CPU112とバスコントローラ113は制御装置110全体の動作を制御するものであり、CPU112はROM114からROM I/F115を経由して読込んだプログラムに基いて動作する。また、ホストコンピュータから受信したPDL(ページ記述言語)コードデータを解釈し、ラスターイメージデータに伸張する動作も、このプログラムに記述されており、ソフトウェアによって処理される。バスコントローラ113は各I/Fから入出力されるデータ転送を制御するものであり、バス競合時の調停やDMAデータ転送の制御を行う。
【００４０】
DRAM116はDRAM I/F117によってメインコントローラ111と接続されており、CPU112が動作するためのワークエリアや、画像データを蓄積するためのエリアとして使用される。
【００４１】
Network Contorller121はI/F123によってメインコントローラ111と接続され、コネクタ122によって外部ネットワークと接続される。
【００４２】
汎用高速バス125には、拡張ボードを接続するための拡張コネクタ124とI/O制御部126とが接続される。汎用高速バスとしては、一般的にPCIバスがあげられる。
【００４３】
I/O制御部126には、リーダー部200、プリンタ部300の各CPUと制御コマンドを送受信するための調歩同期シリアル通信コントローラ127が2チャンネル装備されており、I/Oバス128によって外部I/F回路140,145に接続されている。
【００４４】
パネルI/F132は、LCDコントローラ131に接続され、操作部150上の液晶画面600に表示を行うためのI/Fと、ハードキーやタッチパネルキーの入力を行うためのキー入力I/F130とから構成される。
【００４５】
操作部150は液晶表示部と液晶表示部上に張り付けられたタッチパネル入力装置と、複数個のハードキーを有する。タッチパネルまたはハードキーにより入力された信号は前述したパネルI/F132を介してCPU112に伝えられ、液晶表示部はパネルI/F132から送られてきた画像データを表示するものである。液晶表示部には、本画像表示装置の操作における機能表示や画像データ等を表示する。
【００４６】
リアルタイムクロックモジュール133は、機器内で管理する日付と時刻を更新/保存するためのもので、バックアップ電池134によってバックアップされている。
【００４７】
E-IDEインタフェース161は、外部記憶装置を接続するためのものである。このI/Fを介してハードディスクやCD-ROM ドライブを接続し、プログラムや画像データを書き込んだり読み込んだりすることができる。
【００４８】
コネクタ142と147は、それぞれリーダー部200とプリンタ部300とに接続され、同調歩同期シリアルI/F(143,148)とビデオI/F(144,149)とから構成される。
【００４９】
スキャナI/F140は、コネクタ142を介してリーダー部200と接続され、また、スキャナバス141によってメインコントローラ111と接続されており、リーダー部200から受け取った画像を、その後の過程における処理の内容によって、最適な2値化を行ったり、主走査・副走査の変倍処理を行ったりする機能を有し、さらに、リーダー部200から送られたビデオ制御信号をもとに生成した制御信号を、スキャナバス141に出力する機能も有する。
【００５０】
スキャナバス141からDRAM116へのデータ転送は、バスコントローラ113によって制御される。
【００５１】
プリンタI/F145は、コネクタ147を介してプリンタ部300と接続され、また、プリンタバス146によってメインコントローラ111と接続されており、メインコントローラ111から出力された画像データにスムージング処理をして、プリンタ部300へ出力する機能を有し、さらに、プリンタ部300から送られたビデオ制御信号をもとに生成した制御信号を、プリンタバス146に出力する機能も有する。
【００５２】
DRAM116上に伸張されたラスターイメージデータのプリンタ部への転送は、バスコントローラ113によって制御され、プリンタバス146、ビデオI/F149を経由して、プリンタ部300へDMA転送される。
【００５３】
（１−２）メインコントローラの説明
図５にメインコントローラのブロック図を示す。
【００５４】
プロセッサコア401は、64ビットのプロセッサバス(SCバス)を介して、システム・バス・ブリッジ(SBB)402に接続される。SBB402は4×4の64ビットクロスバスイッチであり、プロセッサコア401の他に、キャッシュメモリを備えたSDRAMやROMを制御するメモリコントローラ403と専用のローカルバス(MCバス)で接続されており、さらに、グラフィックバスであるGバス404、IOバスであるBバス405と接続され、全部で4つのバスに接続される。SBB402は、これら4モジュール間を、可能な限り、同時平行接続を確保することができるように設計されている。
【００５５】
また,データの圧縮伸張ユニット(codec)418とも, codec I/F を介して接続されている。
【００５６】
Gバス404はGバスアービタ(GBA)406により協調制御されており、スキャナやプリンタと接続するためのスキャナ/プリンタコントローラ(SPC)408に接続される。また、Bバス405は、Bバスアービタ(BBA)407により協調制御されており、SPC408のほか、電力管理ユニット(PMU)409,インタラプトコントローラ(IC)410,UARTを用いたシリアルインタフェースコントローラ(SIC)411,USBコントローラ412,IEEE1284を用いたパラレルインタフェースコントローラ(PIC)413,LANコントローラ(LANC)414,LCDパネル,キー,汎用入出力コントローラ(PC)415,PCIバスインタフェース(PCIC)416にも接続されている。
【００５７】
PC415には、表示パネルやキーボードを備えた操作パネル417が接続される。
【００５８】
（１−２−１）インタラプトコントローラの説明
インタラプトコントローラ410は、Bバス405に接続され、メインコントローラチップ内の各機能ブロック及び、チップ外部からのインタラプトを集積し、CPUコア401がサポートする、6レベルの外部インタラプト及び、ノンマスカブルインタラプト(NMI)に再分配する。各機能ブロックとは、電力管理ユニット409,シリアルインタフェースコントローラ411,USBコントローラ412,パラレルインタフェースコントローラ413,ＬＡＮコントローラ414,汎用IOコントローラ415,PCIインタフェースコントローラ416,スキャナ/プリンタコントローラ408などである。
【００５９】
（１−２−２）メモリコントローラの説明
メモリコントローラ403は、メモリコントローラ専用のローカルバスであるMCバスに接続され、シンクロナスDRAM(SDRAM)やフラッシュROMやROMを制御する。
【００６０】
（１−３）システムバスブリッジの説明
図６はシステムバスのブロック図を示す。
【００６１】
SBB402は、Bバス(入出力バス),Gバス(グラフィックバス),SCバス(プロセッサローカルバス)及びMCバス間の相互接続をクロスバスイッチを用いて提供する、マルチチャネル双方向バスブリッジである。クロスバススイッチにより、2系統の接続を同時に確立することが出来、並列性の高い高速データ転送を実現出来る。
【００６２】
SBB402は、Bバス405と接続するためのBバスインタフェース2009と、Gバス404と接続するためのGバスインタフェース2006と、プロセッサコア401と接続するためのCPUインタフェーススレーブポート2002と、メモリコントローラ403と接続するためのメモリインタフェースマスターポート2001と, 圧縮伸張ユニット418と接続するためのCODECバスインタフェース2014を備えるほか、アドレスバスを接続するアドレススイッチ2003,データバスを接続するデータスイッチ2004を含む。また、プロセッサコアのキャッシュメモリを無効化するキャッシュ無効化ユニット2005を備えている。
【００６３】
（１−３−１）PCIバスインタフェースの説明
PCIバスインタフェース416は、メインコントローラ内部汎用IOバスであるBバスと、チップ外部IOバスであるPCIバスの間をインタフェースするブロックである。
【００６４】
（１−３−２）Gバスアービタ、Bバスアービタの説明
Gバスのアービトレーションは、中央アービトレーション方式であり、各バスマスタに対して専用のリクエスト信号とグラント信号を持つ。このアービタは制御方法をプログラミングすることが出来る。また、バスマスタへの優先権の与え方として、すべてのバスマスタを同じ優先権として、公平にバス権を与える公平アービトレーションモードと、いずれかひとつのバスマスタの優先権を上げ、優先的にバスを使用させる優先アービトレーションモード、のどちらかを指定できる。
【００６５】
Bバスアービタ407は、IO汎用バスであるBバス405のバス使用要求を受け付け、調停の後、使用許可を選択された一つのマスタに対して与え、同時に2つ以上のマスタがバスアクセスを行う事を禁止する。アービトレーション方式は、3段階のプライオリティを持ち、それぞれのプライオリティに複数のマスタをプログラマブルに割り当てられる構成になっている。
【００６６】
（１−４）スキャナコントローラ/プリンタコントローラ
図７はスキャナコントローラ、プリンタコントローラのブロック図である。
【００６７】
スキャナ/プリンタコントローラ408は、VideoI/Fによってスキャナおよびプリンタと接続され、内部バスGバスおよびBバスにインタフェースするブロックである。大別して以下の3つのブロックから構成される。
【００６８】
（１−４−１）スキャナコントローラ
スキャナとビデオI/Fで接続され、動作制御およびデータ転送制御を行なう。Gバス/BバスI/Fユニット(GBI)4301Aとは、IFバスで接続され、データ転送およびレジスタのリード/ライトが行なわれる。
【００６９】
（１−４−２）プリンタコントローラ
プリンタとビデオI/Fで接続され、動作制御およびデータ転送制御を行なう。GBI 4301Bとは、IFバスで接続され、データ転送およびレジスタのリード/ライトが行なわれる。
【００７０】
CPバスは、スキャナとプリンタの画像データおよび水平垂直同期のための同期信号を直結するためのバスである。
【００７１】
（１−４−３）Gバス/Bバス I/Fユニット(GBI)
スキャナコントローラ4302およびプリンタコントローラ4303をGバスまたはBバスに接続するためのユニットである。スキャナコントローラ4302とプリンタコントローラ4303にそれぞれ独立して接続され、GバスとBバスの両方に接続されている。
【００７２】
（１−５）電力管理ユニットの説明
メインコントローラ111は、CPUを内蔵した大規模なASICである。このため、内部のロジックが全部同時に動作してしまうと、大量の熱を発生し、チップ自体が破壊されてしまう恐れがある。これを防ぐために、メインコントローラは、ブロック毎の電力の管理、すなわちパワーマネジメントを行ない、更にチップ全体の消費電力量の監視を行なう。
【００７３】
パワーマネージメントは、それぞれのブロックが各自個別に行なう。各ブロックの消費電力量の情報は、パワーマネージメントレベルとして、電力管理ユニット(PMU)409に集められる。PMU409では、各ブロックの消費電力量を合計し、その値が限界消費電力を超えないように、メインコントローラの各ブロックの消費電力量を一括して監視する。
【００７４】
前記ハードウェアを用いた起動シーケンスの高速化方法について、実施例を用いて以下で説明する。
【実施例１】
【００７５】
図８を用いてsleep 処理におけるデータ退避方法について述べる。ソフトスイッチ809等や一定時間アクセスが無かった場合に発生するスリープ信号を受信すると(S001)、メモリマップを取得し(S002)、メモリマップから、テキスト領域、データ領域、画像領域、未使用領域を判別する。次に、画像メモリ領域データをHDD等の不揮発データ装置に退避させるため、前もって演算と保存を行う(S003)。次に、データ領域をミニダンプしHDD等の不揮発データ装置に退避させる(S004)。また同時に、レジスタも退避する(S005)。このとき、wake up 処理の時に text とバックアップデータの不整合を起こさないため、text領域に展開されているプログラムのバージョンを保存する(S006)。また、メモリ上に展開されていたデータがどの領域に展開されているか判断するために、メモリマップとメモリダンプファイルの対応表を作成し保存する(S007)。最後にスリープ状態に遷移する(S008)。
【００７６】
図９を用いて、wake up 処理と通常起動時におけるデータ復帰方法について述べる。ハードスイッチ、ソフトスイッチ809やネットワーク等を経由して wake up 信号を受信すると(S010)、まずローダを実行する(S011)。ローダは、メモリダンプの有無を判別し(S012)、メモリダンプが無ければ通常起動を実行する(S016)。メモリダンプがあれば、ロードするプログラムのバージョンとメモリダンプしたときのプログラムのバージョンが合っているか判断し(S013)、合っていなければ通常起動を実行する(S016)。プログラムとダンプデータが合わないのは、初めの起動やプログラムのバージョンアップなどが考えられる。プログラムとダンプデータが合っていれば(S013)、メモリマップとメモリダンプファイルの対応表を用いて(S007)、保存ダンプのメモリ展開を行う(S014)。また同時に、レジスタも展開する(S015)。最後にプログラムをロードし実行する(S016)。
【実施例２】
【００７７】
図１０は、退避データと取得データが異なっていた場合に、該当箇所と影響範囲のみ再初期化する流れを説明したフローチャートである。起動方法には、一般的な起動方法であるオプション装置が変更されなかった場合、例外的な起動方法であるオプション装置が変更された場合の２種類がある。前記２種類の起動方法の詳細について、以下で順に説明する。
【００７８】
図１０を用いて、再起動時にオプション装置が変更されなかった場合の、本発明のコンピュータの起動方法を説明する。まず、機器構成情報を退避させた領域に退避データがあるかどうかチェックするF301。始めは退避データが無いため退避データを用いず起動しF308、起動初期化が終了したらF309、初期化時に取得した機器構成情報をバックアップするF310。次に再起動した時、再度機器構成情報を退避させた領域に退避データがあるかどうかチェックするF301。先ほどバックアップしたので退避データが存在するため、退避データを用いて機器構成が確定する前に起動処理を行うF302。起動中に機器構成応答を受け取った時F304、退避データと受け取った機器構成情報を比較F305、つまり起動時と再起動時の機器構成を比較し、異なっていれば退避データを応答情報で上書きしてF307、相違箇所及び影響範囲を再初期化F308、異なっていなければ処理を継続する。最後に起動処理の終了を判定しF303、起動処理を終了する。
【００７９】
図１０を用いて、再起動時にオプション装置が変更された場合の、本発明のコンピュータの起動方法を説明する。まず、機器構成情報を退避させた領域に退避データがあるかどうかチェックするF301。始めは退避データが無いため退避データを用いず起動しF308、起動初期化が終了したらF309、初期化時に取得した機器構成情報をバックアップするF310。次に再起動した時、再度機器構成情報を退避させた領域に退避データがあるかどうかチェックするF301。先ほどバックアップしたので退避データが存在するため、退避データを用いて機器構成が確定する前に起動処理を行うF302。起動中に機器構成応答を受け取った時F304、退避データと受け取った機器構成情報を比較F305、つまり起動時と再起動時の機器構成を比較し、異なっていれば退避データを応答情報で上書きしてF307、相違箇所及び影響範囲を再初期化F308、異なっていなければ処理を継続する。最後に起動処理の終了を判定しF303、起動処理を終了する。
【実施例３】
【００８０】
図１１は、退避データと取得データが異なっていた場合に、再起動する流れを説明したフローチャートである。起動方法には、一般的な起動方法であるオプション装置が変更されなかった場合、例外的な起動方法であるオプション装置が変更された場合の２種類があるが、前記実施例と再起動の箇所以外は変わらないため、以下で２種類の起動方法を同時に説明する。
【００８１】
図１１を用いて、再起動時にオプション装置が変更された場合とされなかった場合の、本発明のコンピュータの起動方法を説明する。まず、機器構成情報を退避させた領域に退避データがあるかどうかチェックするF201。始めは退避データが無いため退避データを用いず起動しF208、起動初期化が終了したらF209、初期化時に取得した機器構成情報をバックアップするF210。次に再起動した時、再度機器構成情報を退避させた領域に退避データがあるかどうかチェックするF201。先ほどバックアップしたので退避データが存在するため、退避データを用いて機器構成が確定する前に起動処理を行うF202。起動中に機器構成応答を受け取った時F204、退避データと受け取った機器構成情報を比較F205、つまり起動時と再起動時の機器構成を比較し、異なっていれば退避データを応答情報で上書きしてF207、相違箇所及び影響範囲を再初期化F208、異なっていなければ処理を継続する。最後に起動処理の終了を判定しF203、起動処理を終了する。
【実施例４】
【００８２】
実施例２及び実施例３は、始めに退避データをチェックし、退避データがあった場合と無かった場合を別のルーチンで表現していた。前記方法だと確実な制御ができるが、２つのルーチンをわざわざ作る必要があり、冗長である。よって、図１２を用いて、初めに退避データのチェックを行わず、機器情報を毎回退避する起動方法について以下で説明する。
【００８３】
図１２は図１０及び図１１の高速化ルーチンである。まず、退避データを用いて起動処理を行うF101。ただし、退避データ領域は初回起動前にクリア済みとする。次に、起動処理が完了しておらずF102、受信した機器初期化応答F103が退避データと異なるならば、退避データの相違部分を応答情報で上書きしF105、相違箇所の影響範囲を再初期化又は再起動するF106。一般的には相違箇所の影響範囲を再初期化し、条件の複合により影響範囲が読めない場合のみ再起動する。反対に、機器初期化応答を受信していない場合F103、又は機器初期化応答と退避データが同じ場合F104は、起動処理を継続する。最後に起動処理が完了するとF102、初期化情報の退避F107を行い、起動処理を終了する。ただし、初期化情報が異なれば該当箇所の退避は行っているF105ので、初期化情報の退避F107は、機器初期化応答の一括退避、又はすでに退避した情報のバックアップ、又は退避処理を行わない、等の処理でも良い。また、退避中に電源ＯＦＦされることで退避データが破壊される可能性があるが、退避データと応答情報の比較F104で修正される。
【実施例５】
【００８４】
前記実施例において、コンピュータ内部の動作状況を説明した。しかし、前記実施例のコンピュータは、複数回再起動を行う可能性等があり、ユーザはコンピュータが壊れているのではないか、と不信感を持つ可能性がある。よって、コンピュータの起動状況をユーザにフィードバックする方法について、以下で説明する。
【００８５】
図１２と、図１３、図１４、図１５、図１６、図１７を用いてUI進捗表示について説明する。図１２のフローチャートは前記実施例で説明した。図１３は起動進捗を表示するためプログレスバーG002を持つＵＩ表示である。図１４はコールバック数、図１５は退避情報更新、図１６は再起動、図１７は再起動後のＵＩ記号表示を表し、図１３の一部G001に表示する。図１４は、前回起動時の進捗G102、全応答情報数G103、現在の応答情報数G104を持つ。
【００８６】
まず、起動時に初期化応答を受信F103したとき、現在の応答G104をカウントアップし表示する。次に、応答情報と退避データが異なっていた場合G305、退避情報更新G202,203,204を表示する。次に、相違箇所の影響範囲を再初期化又は再起動F106する前に、再起動G302を表示し、現在の応答情報数G104を退避する。最後に、起動を継続する際は退避した応答情報数G104をG402に表示し、起動継続もしくは再起動する。
【００８７】
つまり、オプション機器のチェック、ハードウェア資源チェック、メモリ構成・システム資源・アルゴリズム資源等のソフトウェア資源チェック、画像構造化記述言語チェック、製品対象国チェック、製品名称等チェック、ユーザ設定チェック、プログラムバージョンチェック等の応答情報の合計は決まっているため、ＵＩには、応答情報合計G103と現在の応答情報数G104、退避情報更新G203,G204,G205、再起動G302、を表示し、また、応答情報数を退避しておき、再起動の際は該応答情報数を表示することで、進捗を表示することができる。
【図面の簡単な説明】
【００８８】
【図１】本実施例に係わる画像入出力システムの全体構成の説明図。
【図２】操作部150となるユーザI/F。
【図３】リーダー部およびプリンタ部の断面図。
【図４】制御装置のブロック図。
【図５】メインコントローラのブロック図。
【図６】システムバスブリッジのブロック図。
【図７】スキャナコントローラ、プリンタコントローラのブロック図。
【図８】実施例1のフローチャート図。
【図９】実施例1のフローチャート図。
【図１０】実施例2のフローチャート図。
【図１１】実施例3のフローチャート図。
【図１２】実施例4、5のフローチャート図。
【図１３】実施例5で用いるUI表示部。
【図１４】実施例5で用いるUI表示の一部。
【図１５】実施例5で用いるUI表示の一部。
【図１６】実施例5で用いるUI表示の一部。
【図１７】実施例5で用いるUI表示の一部。
【符号の説明】
【００８９】
３３１  搬送路
３３５  搬送路
３３６  搬送路
３３８  搬送路
３３３  搬送路
３３２  再給紙搬送路
３２５  定着部
３２３  感光ドラム
【図１】
2007038580.tif 000003
【図２】
2007038580.tif 000004
【図３】
2007038580.tif 000005
【図４】
2007038580.tif 000006
【図５】
2007038580.tif 000007
【図６】
2007038580.tif 000008
【図７】
2007038580.tif 000009
【図８】
2007038580.tif 000010
【図９】
2007038580.tif 000011
【図１０】
2007038580.tif 000012
【図１１】
2007038580.tif 000013
【図１２】
2007038580.tif 000014
【図１３】
2007038580.tif 000015
【図１４】
2007038580.tif 000016
【図１５】
2007038580.tif 000017
【図１６】
2007038580.tif 000018
【図１７】
2007038580.tif 000019