JP4361073B2 - 画像処理装置とその制御方法 - Google Patents

画像処理装置とその制御方法 Download PDF

Info

Publication number
JP4361073B2
JP4361073B2 JP2006202443A JP2006202443A JP4361073B2 JP 4361073 B2 JP4361073 B2 JP 4361073B2 JP 2006202443 A JP2006202443 A JP 2006202443A JP 2006202443 A JP2006202443 A JP 2006202443A JP 4361073 B2 JP4361073 B2 JP 4361073B2
Authority
JP
Japan
Prior art keywords
state
usb
power saving
transition
device driver
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
JP2006202443A
Other languages
English (en)
Other versions
JP2007068156A (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 JP2006202443A priority Critical patent/JP4361073B2/ja
Priority to US11/663,955 priority patent/US7765413B2/en
Priority to EP06781687.6A priority patent/EP1909474B1/en
Priority to PCT/JP2006/314775 priority patent/WO2007013512A1/ja
Publication of JP2007068156A publication Critical patent/JP2007068156A/ja
Application granted granted Critical
Publication of JP4361073B2 publication Critical patent/JP4361073B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32561Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00885Power supply means, e.g. arrangements for the control of power supply to the apparatus or components thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00885Power supply means, e.g. arrangements for the control of power supply to the apparatus or components thereof
    • H04N1/00888Control thereof
    • H04N1/00896Control thereof using a low-power mode, e.g. standby
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00885Power supply means, e.g. arrangements for the control of power supply to the apparatus or components thereof
    • H04N1/00904Arrangements for supplying power to different circuits or for supplying power at different levels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32561Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor
    • H04N1/32571Details of system components
    • H04N1/32587Controller
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32561Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor
    • H04N1/32593Using a plurality of controllers, e.g. for controlling different interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32561Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor
    • H04N1/32598Bus based systems
    • H04N1/32603Multi-bus systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0008Connection or combination of a still picture apparatus with another apparatus
    • H04N2201/0034Details of the connection, e.g. connector, interface
    • H04N2201/0037Topological details of the connection
    • H04N2201/0041Point to point
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0008Connection or combination of a still picture apparatus with another apparatus
    • H04N2201/0034Details of the connection, e.g. connector, interface
    • H04N2201/0046Software interface details, e.g. interaction of operating systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0008Connection or combination of a still picture apparatus with another apparatus
    • H04N2201/0034Details of the connection, e.g. connector, interface
    • H04N2201/0048Type of connection
    • H04N2201/0049By wire, cable or the like
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本発明は、画像入力手段と入力画像データを画像出力用データ(プリント出力用又は外部装置への出力用データ)に処理する手段を有する画像処理装置(例えば、ネットワークに接続可能なプリンタ装置やファクシミリ装置、複写・FAX・プリンタ・スキャナ等の機能を有する複合機)に関する。より詳細には、省電力消費状態で装置を待機させる省電力モードを有する上記画像処理装置に関する。
入力画像データのプリント出力を行う機能をベースに画像処理を行う装置として、複写・FAX・プリンタ・スキャナ等の機能を複合して有するMFP(複合機)が広く使用されている。MFPは、ネットワークに接続され、自身が備えるスキャナを通して入力された紙文書の画像データのほか、通信I/F(インターフェース)を介して外部装置から様々な画像(文書)が入力され、これらの入力画像は、画像出力用データに処理された後、プロッタでプリント出力されたり、接続された外部利用装置へ出力される。
上記のような画像処理装置は、従来から、装置のアイドル状態を検知して、省電力消費状態で装置を待機させ、所定の復帰条件の発生により通常使用状態に復帰させる、省電力モードを有する。
こうした省電力機能を実現する制御システムとして、省電力モードで動作するサブシステムを備えたものがある(例えば、特許文献1参照)。このサブシステムは、通常使用時に装置全体を制御するメインシステムの電源を管理し、省電力モードの動作を担う。即ち、省電力状態では、メインシステムのCPU電源をオフし、ネットワーク応答や機器の監視をサブシステムで行い、省電力状態から復帰する際に再びメインシステムを復帰させる方法により、CPUの電力が大きいシステムでは大きな電力の削減を可能とする。なお、特許文献1では、サブシステムを構成するプログラマブルシーケンサ内蔵ASICが、省電力モードへの移行と省電力モードからの復帰シーケンス(例えば、操作パネルのスイッチを押すこととか、機器のカバーを開けるとかをトリガとして復帰させる)をコントロールしている。
特開2002−268471号公報
しかしながら、特許文献1には、ネットワークI/F経由で送信されてくる信号の受信を省電力モードからの復帰条件にした例が示されている。ただ、特許文献1は、この例に留まり、近年、この種の画像処理装置(MFP)の装備として考慮の対象とされている、周辺デバイスを接続するための汎用のI/FであるUSB(Universal Serial Bus)について、記述されていない。
従って、USBデバイス(USBによって接続される外付けの装置)を使用する場合に、装着されたUSBデバイス(省電力モード時にも電源ON)と、メインシステム(省電力モード時に電源OFF)側で処理に必要になるUSBデバイスドライバとの間に、省電力モード時の動作によって生じうる不整合を修復する技術についても、従来では未解決である。なお、上記不整合は、省電力モード中にデバイスの挿抜によって、デバイス自体の変化やデバイスの状態変化が生じるとき、省電力モード中に電源OFFとなっているメインシステムが、この変化を認識できないために起きる。
そこで、本発明は、上記の課題に鑑みてなされたものであり、省電力制御を行うサブシステムを有する画像処理装置において、USBのサポートを可能とし、さらにUSBに対応可能な上記画像処理装置において、省電力モード時の動作によって、USBデバイスとメインシステムで用いるUSBデバイスドライバとの間に生じ得る不整合を修復できるようにすることを目的とする。
上述した課題を解決するために、本発明の画像処理装置は、画像入力、入力画像の出力用データへの処理、画像出力の各手段を制御するメイン制御システムと、前記メイン制御システムへの電源供給を制御することにより、省電力モードへの移行動作、省電力モードからの復帰動作を行うとともに、データの入出力に用いるネットワーク及びUSBに常時、応答・発信を可能とするサブ制御システムとを有する画像処理装置であって、前記メイン制御システムが有するUSBデバイスドライバの状態を保持する保持手段と、前記USBデバイスドライバの状態を遷移させる遷移手段と、前記USBの状態を取得する取得手段とを有し、前記保持手段が、省電力モードへの移行前に、前記USBデバイスドライバの状態を保持し、かつ、前記遷移手段が、省電力モードからの復帰後に前記取得手段が取得した前記USBの状態と、前記保持手段により保持された前記USBデバイスドライバの状態とが異なる場合には、保持された前記USBデバイスドライバの状態と、取得された前記USBの状態とを比較して前記USBデバイスドライバの状態を遷移させるための推定状態遷移列を決定し、前記推定状態遷移列に従って前記USBデバイスドライバの状態を遷移させることにより復帰動作を行うことを特徴とする。
上記の画像処理装置は、前記遷移手段が、取得された前記USBの状態が保持された前記USBデバイスドライバの状態より通信可能状態に近い場合には、保持された前記USBデバイスドライバの状態から、取得された前記USBの状態に向けて状態遷移するように推定状態遷移列を決定する構成にすることができる。
上記の画像処理装置は、前記遷移手段が、保持された前記USBデバイスドライバの状態が取得された前記USBの状態より通信可能状態に近い場合には、初期状態から、取得された前記USBの状態に向けて状態遷移するように推定状態遷移列を決定する構成にすることができる。
上記の画像処理装置は、省電力モード時に前記USBのデータ転送用DMAを停止させ、省電力モードから復帰する際に、前記状態遷移を行った後の前記USBデバイスドライバの状態に応じて前記データ転送用DMAを開始するように構成することができる。
上記の画像処理装置は、前記サブ制御システムが、前記メイン制御システムの省電力モードからの復帰動作を前記USBにおけるデータ入力の検知を条件に行うように構成することができる。
上記の画像処理装置は、前記サブ制御システムが、前記メイン制御システムの省電力モードからの復帰動作を前記USBの活線挿抜の検知を条件に行うように構成することができる。
また、上述した課題を解決するために、本発明の画像処理装置の制御方法は、画像入力、入力画像の出力用データへの処理、画像出力の各手段を制御するメイン制御システムと、前記メイン制御システムへの電源供給を制御することにより、省電力モードへの移行動作、省電力モードからの復帰動作を行うとともに、データの入出力に用いるネットワーク及びUSBに常時、応答・発信を可能とするサブ制御システムとを有する画像処理装置の制御方法であって、前記メイン制御システムが有するUSBデバイスドライバの状態を保持する保持手順と、前記USBデバイスドライバの状態を遷移させる遷移手順と、前記USBの状態を取得する取得手順とを有し、前記保持手順が、省電力モードへの移行前に、前記USBデバイスドライバの状態を保持し、かつ、前記遷移手順が、省電力モードからの復帰後に前記取得手順により取得された前記USBの状態と、前記保持手順により保持された前記USBデバイスドライバの状態とが異なる場合には、保持された前記USBデバイスドライバの状態と、取得された前記USBの状態とを比較して前記USBデバイスドライバの状態を遷移させるための推定状態遷移列を決定し、前記推定状態遷移列に従って前記USBデバイスドライバの状態を遷移させることにより復帰動作を行うことを特徴とする。
上記の画像処理装置の制御方法は、前記遷移手順が、取得された前記USBの状態が保持された前記USBデバイスドライバの状態より通信可能状態に近い場合には、保持された前記USBデバイスドライバの状態から、取得された前記USBの状態に向けて状態遷移するように推定状態遷移列を決定する構成にすることができる。
上記の画像処理装置の制御方法は、前記遷移手順が、保持された前記USBデバイスドライバの状態が取得された前記USBの状態より通信可能状態に近い場合には、初期状態から、取得された前記USBの状態に向けて状態遷移するように推定状態遷移列を決定する構成にすることができる。
上記の画像処理装置の制御方法は、省電力モード時に前記USBのデータ転送用DMAを停止させ、省電力モードから復帰する際に、前記遷移手順により前記状態遷移を行った後の前記USBデバイスドライバの状態に応じて前記データ転送用DMAを開始するように構成することができる。
上記の画像処理装置の制御方法は、前記メイン制御システムの省電力モードからの復帰動作を前記USBにおけるデータ入力の検知を条件に行うように構成することができる。
上記の画像処理装置の制御方法は、前記メイン制御システムの省電力モードからの復帰動作を前記USBの活線挿抜の検知を条件に行うように構成することができる。
本発明の画像処理装置及びその制御方法によれば、メイン制御システムの省電力モードからの復帰動作をUSBにおけるデータ入力の検知、又はUSBの活線挿抜の検知を条件に行うようにしたことにより、USBデバイスを接続した画像処理装置において、USBドライバの状態の不整合を発生することなく、省電力モードへ移行させたメイン制御システムをこれらの復帰条件により復帰させることが可能になり、画像処理装置のパフォーマンスの向上を図ることが可能となる。
また、省電力モード時の動作によって、USBに接続されたデバイスとメイン制御システムで用いるデバイスのドライバとの間に生じ得る状態の不整合を修復することにより、省電力モードからの復帰時の動作に不具合が起きることがなく、適正な動作を保証することが可能になる。
以下、本発明の実施の形態について図面を用いて説明する。
なお、本実施形態は、本発明の画像処理装置を、複写・FAX(ファクシミリ)・プリンタ・スキャナ等の機能を複合して有するMFP(複合)機に適用した例を示す。
まず、本実施形態のMFP機における制御システムの基本構成を説明する。この制御システムは、MFP機が有する複合された画像処理機能のほか、省電力機能(省電力モードへの移行、省電力モードからの復帰動作を行う)を実現するための構成を備える。このために、コントローラは、省電力モードの動作を司るサブ制御システムをメイン制御システムに組み込んだシステム構成とする。メイン制御システムは、画像入力(自身が備えるスキャナや接続された外部装置からの入力)、入力画像の出力用データへの処理、画像出力の各手段を制御し、サブ制御システムは、メイン制御システムへの電源供給を制御する。また、サブ制御システムは、画像などのデータ入出力に用いるネットワーク、USB等のI/Fを通じて、常時、外部装置との応答/発信を可能とし、省電力モードからの復帰条件の一つをUSBからのデータ入力とする復帰動作の制御を行う。
図1は、本実施形態に係る制御システムの基本構成(ハードウェア)のブロック図を示す。図1の制御システムにおけるブロックは、以下の構成要素(構成部)を示す。
5401:コントローラ(コントローラボード)
5402:拡張スロット用ボード(MOTHERボードともいう。この例では、スロットのみを有する)
5403:エンジン(スキャナ、プリンタ等のエンジンであり、図3では、5267として示す)
5404:CPU(Central Processing Unit。図3では、5201として示す)
5405:ASIC1(CPU5404の制御下でメイン制御システムのApplication Specific Integrated Circuitとして働く。図3では、5202として示す)
5406:MEM(画像用バッファ、プログラム、ワークエリア用として使用されるメモリ)
5407:HDD(Hard Disk Drive。画像、管理情報、フォント、プログラムなどを格納する記憶装置で、転送速度を上げるために2台並列で接続することも可能である)
5408:SD(Secure Digital。ブート可能とし、ここでは、プログラムを格納する)
5409:LOGIC(PCI(Peripheral Component Interconnect)信号からローカルバス信号を作り出すロジック)
5410:ROM0(ブート可能なRead Only Memoryで、ここでは、プログラムを格納する)
5411:ROM1(ブート可能なRead Only Memoryで、ここでは、プログラムを格納する)
5412:NVRAM(Nonvolatile Random Access Memory。ここでは、システムの設定などを保存する)
5413:SLOT1(オプションPCIスロット1)
5414:SLOT2(オプションPCIスロット2)
5415:SLOT3(オプションPCIスロット3)
5416:操作部(CPUとプログラムを内蔵する独立したユニットで、画面表示とUI(User Interface)を受け持つ)
5417:ASIC2(ASIC1(5405)とPCIで接続され、サブ制御システムを構成するASICとして働く。図3では、(5264)として示す)
5418:SLOT2(エンジン側PCIのオプションスロット2)
5419:SOLT3(エンジン側PCIのオプションスロット1)
5420:ネットワークI/F(ホストPC等と接続するためのネットワークのI/F)
5421:USB2.0(ホストPCと接続するためのUSB2.0I/F)
次に、図1によってハードウェアの基本構成を示した制御システムの動作を説明する。ここでは、(1)初期化、(2)省電力モードへの移行、および(3)省電力モードからの復帰の各動作に分け、より詳細なシステム内部の構成例を示しながら、各動作を説明する。
(1)初期化
電源が投入されるとエンジン(5403)は、CPU(5404)により、各機能が初期化され、コントローラ(5401)の初期化が終わって、処理要求コマンドを受信するまで待機状態になる。この初期化のフローが、装置を通常の使用可能な状態とする際に行われる。
コントローラ(5401)の初期化は、次の手順による。電源が投入されると、先ず、ASIC2(5417)にリセット信号が入力される。この入力を受けるASIC2(5417)は、いくつかに分割された電源系統に順番をつけて、電源が入るように電源ユニット(図示せず)に、信号を送る。
この結果、それぞれの電源系統から発生したリセット信号が必要なデバイスに分配される。CPU(5404)では、リセット信号がアサートされ、ネゲートされると、リセットベクターの命令をフェッチしようとし、ASIC1(5405)にフェッチ信号を送る。ASIC1(5405)は、このフェッチ信号を受け取るとアドレスをデコードして、初期化プログラムの格納されているROM0(5410)のCS信号をアサートし、CPU(5404)が要求したアドレスの内容(命令コードあるいはデータ)を読み出して、CPU(5404)へ渡す。
CPU(5404)はASIC1(5405)に命令の読み出しを繰り返し要求し、ASIC1(5405)は、そのアドレスに応じてROM0(5410)の命令コード或いはデータをCPU(5404)へ渡す。このようにしてCPU(5405)は、プログラムを実行することができる。
ASIC1(5405)には、ROM0(5410)の代わりにSD(5408)から、直接コード/データを読み出すことができる仕組みが内蔵されており、SDカードには、ROM0(5410)に格納されるプログラムと同様のフォーマットでプログラムが格納されている。一般にSDカードは、セクタ番号で管理されるが、CPU(5405)からのフェッチ要求アドレスをセクタ番号とセクタ内のオフセットアドレスに変換することで、まるでROMから読み出すようにアクセスが可能である。
読み出された初期化プログラムによって、CPU(5404)の初期化、ASIC1(5405)に接続されるメモリ(5406)とASIC2(5417)の初期化、ASIC1(5405)から出ている2種類のPCIバスの初期化、エンジン(5403)の初期化、操作部(5416)の初期化、HDD(5407)の初期化、ネットワークI/Fの初期化、また、必要に応じて、SLOT群(5418、5419、5413、5414、5415)の初期化を行い、その後アプリケーションを起動する。
ASIC1(5404)のROM0(5410)のアクセス時間は、データバス幅に依存するが、ASIC1(5405)の外部端子数を少なく抑えるために、16bitや8bitなどのようにCPU(5404)のデータバス幅よりも少ないbit数で構成されることが多い。また、場合によってはbit数が4bit、1bitなどのようなシリアルデバイス、たとえば、SEEPROM、SDカード(5408)、メモリスティックのようなデバイスを使用した場合には、特に遅くなる。さらに、専用の端子を削減するためにPCIバスの端子と共有し、外部LOGIC(5409)を介して、PCIの信号と接続し、PCIバスへのアクセスと排他しながら、ROM0(5410)やROM1(5411)、NVRAM(5412)などのアクセスを行うように構成することができる。
本例の構成では、ホストI/Fと電源制御および省電力モードからの復帰などはASIC2(5417)で行い、ASIC1(5405)は、CPU(5405)、MEM(5406)、HDD(5407)、SD(5408)、PCIバス2本の制御を行う。
ASIC1(5405)の2本PCIバスのオプション構成は、REQ/GNTのセットをどちらにも割り振ることが可能であり、システム構成の自由度を大きくしている。2本あるうちの片方のPCIバスは、エンジン(5403)と接続するための専用であり、もう一方はASIC2(5417)と接続するための専用である。ASIC2(5417)が接続されるPCIバスは66MHzで動作することが可能であり、ホストI/Fを接続するために特化している。オプション用のスロット1、2、3(5413、5414、5415)は、66MHz動作時にエンジン専用のPCIバスへ接続するように構成される。同様に割り込み信号もエンジン(5403)用とASIC2(5417)用を1本固定し、他に3本をどちらのPCIバスへも振り分けることができる。
・CPUの初期化
CPU(MIPS系)(5404)は、ブートコンフィグ(Configuration)データを各ASICから読み取り、リセット解除後、命令のフェッチを開始し、コールドリセットか?それ以外によるリセット例外かどうかの判定、各ASICにおけるローカルバスのアクセスタイミングの初期化、CPU内のキャッシュの初期化、TLBの初期化、例外ベクターの設定、コプロセッサの初期化を行う。
・メモリの初期化
標準で実装されるメモリ(以下、標準メモリと呼ぶ)のタイミングにかかわるパラメータを決定する前に、オプションのメモリが存在するかを確認し、もし、存在すれば、オプションメモリの情報を格納してあるSEEPROMをアクセスして、そのメモリの容量、速度、構成を読み出し、標準メモリとタイミングを比較し、遅いほうのタイミングを使用して、ASIC1(5405)に設定を行い、MEM(5406)の初期化を行う。その後、割り込みベクターの設定、データ領域への初期値の設定などを行う。
・PCIバスの初期化
各ASICの内部レジスタのコンフィグ用レジスタを使用して、PCIバスに存在する全デバイスのサーチを行う。デバイスのタイプを判断して、バスブリッジがあれば、その先のバスのデバイスをサーチする。
全てのデバイスの列挙が完了したら、PCIのアドレス空間にマッピングを行う。ASIC管理下のメモリの先頭アドレスを0x0000.0000としてマッピングを行い、(必ずしも0x0000.0000にしなくてもよい)その他のデバイスは、ASICのレジスタ空間に用意されたPCIメモリ空間アクセスウインドウあるいはPCII/O空間アクセスウインドウ内にマッピングする。
マッピングが完了したら、それぞれのデバイスのコマンドレジスタのバスマスタイネーブル、メモリイネーブル、I/Oイネーブルビットに1を設定して、デバイスを動作可能な状態にする。
ASIC1(5405)には、2本のPCIバスが存在するので両方のPCIバスを同様に初期化する。
・エンジン(5403)の初期化
エンジン(5403)とコントローラ(5401)の通信は、エンジン側PCIデバイスが持つ送信バッファ/受信バッファを介して行う。
・操作部(5416)の初期化
操作部(5416)とASIC2(5417)は、操作部I/Fを介して接続され、送信と受信は全二重で行われる。予め決められているパケットサイズで、パケット通信を行い、操作部にシステムが初期化中であることを表示させる。
・HDD(5407)の初期化
HDD(5407)が接続されているかどうかの確認を行い、HDD(5407)が接続されている場合には、HDD(5407)の情報を読み出し、後で利用するために管理情報をメモリに格納する。
コントローラ(5401)のメイン制御システムに搭載されるソフトウエアの構成を図2に示す。図2のソフトウエア構成におけるブロックは、以下の構成要素(構成部)を示す。
5001:PRINT-APL(プリントアプリケーション)
5002:COPY-APL(コピーアプリケーション)
5003:FAX-APL(FAXアプリケーション)
5004:SCAN-APL(スキャナアプリケーション)
5005:NETWORK-APL(ネットワークアプリケーション)
5006:サービス-API(サービス層5007〜5012のアプリケーションプログラミングインターフェース)
5007:ECS(エンジンコントロールサービス)
5008:MCS( メモリコントロールサービス)
5009:OCS(オペレーションパネルコントロールサービス)
5010:SCS(システムコントロールサービス)
5011:NCS(ネットワークコントロールサービス)
5012:FCS(FAXコントロールサービス)
5013:SRM(システムリソースマネジャー)
5014:汎用OS(この例ではUNIX(登録商標)ライクなOSを搭載)
5015:エンジンコマンドI/F(エンジンと通信するためのプログラミングインターフェース)
5016:エンジンハードウェア(エンジン本体)
5017:コントローラハードウェア(コントローラのハードウェアリソース)
上記のように、CPU(5404)や各ASICに依存する部分はデバイスドライバ層で吸収する(後記図20の汎用OS層の構成、参照)ことで、異なるCPUや異なるASICでも移植が容易になるように構成されている。
図3は、図1のコントローラ(5401)におけるASIC1の内部構成のブロック図を示す。図3のASIC1における各ブロックは、以下の構成要素(構成部)を示す。
5201:CPU(図1では、5404として示す)
5202:ASIC1(図1では、5405として示す)
5203:CPUI/F(CPU(5201)とASIC1(5202)を接続するモジュール)
5204:IREG(内部レジスタ)
5205:arbiter(メモリアービタ)
5206:PCI66_CONFIG(PCI66(5212)のCONFIG空間)
5207:PCI66_INITIATER(PCI66(5212)のイニシエータアクセスモジュール)
5208:LBC(ローカルバスコントローラ)
5209:PCI66_DIRECT(PCI66(5212)のダイレクトアクセスパス)
5210:PCI66_SEL(ローカルバスとPCI66(5212)のセレクタ)
5211:PCI66_Target(PCI66(5212)のターゲット)
5212:PCI66(PCI66部)
5213:PCI66_arbiter(PCIアービタ)
5215:DATA_DMAC(HDD(5407)のデータDMAC(Direct Memory Access Controller))
5216:CMD_DMAC(HDD(5407)のコマンドDMAC)
5217:CD1_DMAC1(圧縮伸長器1の画像側(画像入出力用)DMAC)
5218:CD1(圧縮伸長器1)
5219:HDC(HDDコントローラ(RAID対応:2台))
5220:PCI-CONFIG(PCIのCONFIG空間)
5221:PCI-INITIATER(PCIのイニシエータアクセスモジュール)
5222:PCI(PCI部(64bit対応))
5224:SEL(圧縮伸長器セレクタ)
5225:CD2(圧縮伸長器2)
5226:CD2-DMAC1(圧縮伸長器2の画像側(画像入出力用)DMAC)
5227:CD1-DMAC2(圧縮伸長器1の符号側(符号入出力用)DMAC)
5228:CD2-DMAC2(圧縮伸長器2の符号側(符号入出力用)DMAC)
5229:FIFO(First-In First-Out、ビデオ1出力用FIFO)
5230:SFT(ビデオ1画像シフタ)
5231:OR(ビデオ 1画像合成器)
5232:FIFO(ビデオ1合成フレーム出力用FIFO)
5234:DMAC(ビデオ1出力用DMAC)
5235:DMAC(ビデオ1合成フレーム出力用DMAC)
5236:DEC(ビデオ1用伸長器)
5237:DMAC(ビデオ1用伸長器符号入力用DMAC)
5238:DMAC(ビデオ1用伸長器画像出力用DMAC)
5239:VOUT1(ビデオ1モジュール)
5240:VOUT2(ビデオ2モジュール)
5241:VOUT3(ビデオ3モジュール)
5242:VOUT4(ビデオ4モジュール)
5243:FIFO(分離信号出力用FIFO)
5244:SFT(分離信号シフタ)
5245:DMAC(分離信号出力用DMAC)
5246:FIFO(画像入力用FIFO)
5247:DMAC(画像入力用DMAC)
5248:DIRECT(PCIダイレクトアクセスパス)
5249:PCI_Target(PCIターゲットモジュール)
5250:PCI_Arbiter(PCIアービタ)
5251:RAMC(RAMメモリコントローラ)
5252:DMAC(クリア用DMAC)
5253:CLR(クリア用モジュール)
5254:DMAC(回転器2用ライトDMAC)
5255:ROT2(回転器2)
5256:DMAC(回転器2用リードDMAC)
5257:DMAC(回転器1用ライトDMAC)
5258:ROT1(回転器1)
5259:DMAC(回転器1用リードDMAC)
5260:DMAC(合成用ライトDMAC)
5261:OR(合成モジュール)
5262:DMAC(合成用リード1DMAC)
5263:DMAC(合成用リード2DMAC)
5264:ASIC2(I/O用ASIC。図1では、5417として示す)
5265:SLOT1(PCI66用オプションスロット)
5266:SLOT1(PCI用オプションスロット)
5267:ENGINE(スキャナ/プロッタエンジン)
5268:DATA_DMAC(SD用データDMAC)
5269:CMD_DMAC(SD用コマンドDMAC)
5270:DMAC(SD−I/O用データDMAC)
5271:SD(SDコントロールモジュール)
また、図4は、ASIC1(図1では、5405として示す)のメモリマップを示す。図4に示すテーブルには、左欄から順に、「アドレス」、「サイズ」(大分類に対応)、「大分類」(メモリ空間の種類で分類)、「サイズ」(細分割サイズ)、「詳細」(大分類の詳細)の形式でメモリマップを示す。
図5は、図1のコントローラ(5401)におけるASIC2の内部構成のブロック図を示す。図5のASIC1における各ブロックは、以下の構成要素(構成部)を示す。
5264:ASIC2(I/O用ASIC。図1では、5417として示す)
5351:PCI(PCIバス制御部で、ここを通じてASIC1(5202)と接続される)
5352:PCI_Arbiter(PCIアービタ)
5353:DMAC(SD用DMAC)
5354:DMAC(USB用DMAC)
5355:DMAC(MAC用DMAC)
5356:DMAC(OPCM用DMAC)
5357:SD(SD用制御部)
5358:USB(USB制御部)
5359:MAC(メモリ制御部)
5360:OPCM(コピー操作部I/F制御部)
5361:IREG(内部レジスタ)
5362:Debug_Serial、OPCP(プリンタ操作部I/F)、GIO(汎用IOポート)、SPI(SPI制御レジスタ)、I2C(I2C制御レジスタ)、PM(パワーマネジメント部)、INTC(割り込み制御部)、WatchDogの各制御部
5363、5371、5372、5373:Arbiter(内部バスアービタ)
5364:System_i/f(CPU(5370)により構成する制御システムのI/F)
5370:CPU(ASIC2(5264)全体を制御するプロセッサ)
5374:Shared_RAM_i/f(Shared_Ram(5377)に対するI/F)
5375:RAMC(System_RAM(5378)の制御部)
5376:LBC(外付けSystem_MEMの制御部)
5377:Shared_Ram(ASIC2内のShared_RAM)
5378:System_RAM(ASIC2内のSystem_RAM)
5380:System_ROM(ASIC2外のSystem_ROM)
5381:System_RAM(オプションで用いる、ASIC2外のSystem_RAM)
図5の実施形態に示すサブ制御システム(I/O用ASIC)を構成するASIC2(5264)は、CPU(5370)を有する。つまり、CPUを搭載することにより、制御システムに柔軟性を持たせ、省電力モード時の電源制御等を司るサブ制御システムに適合する機能の実現を容易にする。
他方、同様のサブ制御システムを全てハードウェア構成として実施することも可能である。図6は、サブ制御システムを構成するI/O用ASICをハードウェア構成とした実施例を示す。なお、図6におけるASIC2(5264)は、図1の制御システムにおけるASIC2(5417)に当たる。
CPUを持たない図6に示す構成でも、I/O用ASICとしての機能は、図5に示したCPUを搭載したものと同様であり、実施は可能である。ただ、CPUを持たない構成例(図6)によると、回路規模が増大すること、システムの柔軟性にかける、などの側面があるので、ここでは、この構成例については図に示すに留め、後記する省電力モード時の電源制御等のサブ制御システムに係る実施形態では、図5に示すCPUを持つ構成例に基づいて詳述する。
(2)省電力モードへの移行
各種デバイスの初期化が完了すると、汎用OS(5014)は、システムのコンフィグ情報にもとづいてアプリケーションを起動する。なお、オプションとしてのFAXユニットが存在しない場合は、FAXアプリケーション(5003)は起動しない。
アプリケーションが起動すると、操作部(5416)には、デフォルトでコピーアプリケーションの操作画面が表示され、ユーザの指示待ちになる。初期操作画面は、ユーザの設定により、どのアプリケーションの画面にも変更が可能である。
この後、操作部からのユーザの処理要求の指示に従い、各種のアプリケーションを利用して通常の処理が行われる。通常処理の動作モードにおいて、所定の移行条件を満たす場合、省電力モードへと移行する。その後、所定の復帰条件に従い再び通常処理の動作モードに復帰する。
図7は、この間の状態遷移を示す図である。以下、図7の状態遷移図をもとに動作を説明する。なお、同図はコピー機能を利用する場合を例にしている。
図7において、主電源オン(6801)後は、コントローラ(5401)は、上記のようにCPU(5404)の初期化、ASIC1(5405)、ASIC2(5417)の初期化を含む初期化プロセスを経て、エンジンレディ状態となる。
エンジン(5403)は、CPU(5404)、各ASICの初期化を含む初期化プロセスを経て、コントローラ(5401)と通信して、定着部(不図示)がウォームアップ中(6802)であることを知らせる。この時、エンジン(5403)は、定着部が一定温度になるまでは、通常よりも電力を多めに使って、できるだけ高速に立ち上げようとする。
定着が目標温度になると、制御を変更して、通常の電力を使って、定着の温度を一定に保つ。このエンジンレディ状態になると、ユーザの指示を受けて、コピー動作(6803)を開始する。コピー動作中(6804)は一定の電力を消費する。
コピー完了(6805)と同時に、コピー可能な状態(6806)で待機する。この状態で、ユーザがある一定時間(6807)、本MFP機をアクセスしなければ、省電力用の監視タイマのタイムアウト(6808)が発生し、MFP機は省電力モード(6809)に移行する。
省電力モード(6809)では、復帰条件を監視する機能を持つ部分を除いては、電源を切って、消費電力を低く抑える。
ユーザが、コピーをとるために省電力モードからの復帰キー、あるいはADF(自動原稿送り装置)への原稿の挿入、あるいは、ADFのリフト(圧板読取のためにADFを除ける)、あるいはネットワークからの復帰指示によって、復帰トリガー(6810)がかかり、復帰動作(6811)を開始する。
復帰動作中(6811)は、定着の温度を上げるために、通常よりも電力を多めに使って、できるだけ高速に立ち上げようとする。
復帰時、CPU(5404)は、ASICの初期化を含む初期化プロセスを経て、エンジンレディ待ちとなる。
エンジン(5403)は、CPU(5404)、各ASICの初期化を含む初期化プロセスを経て、コントローラ(5401)と通信して、定着部(不図示)がウォームアップされ復帰中(6811)であることを知らせる。この時、エンジン(5403)は、定着部が一定温度になるまでは、通常よりも電力を多めに使って、できるだけ高速に立ち上げようとする。
定着が目標温度になると、制御を変更して、通常の電力を使って、定着の温度を一定に保つ。このエンジンレディ状態になると、ユーザの指示を受けて、コピー動作を開始する(6812)。コピー動作中(6813)は一定の電力を消費する。
コピー完了(6814)と同時に、コピー可能な状態(6815)で待機し、ユーザがある一定時間、画像処理装置をアクセスしなければ、省電力用の監視タイマのタイムアウト(6816)が発生し、画像処理装置は省電力モード(6817)に遷移する。
上記した動作モードの遷移において、主電源オン(6801)から通常処理状態への立ち上げ時、及び省電力モードから通常処理状態への復帰時に、コントローラ(5401)の初期化プロセスを行うが、この時に行う初期化処理について、更に説明を加える。
コントローラ(5401)の汎用OS(5014)を含む各種アプリケーションの立ち上げ時間は、プログラムROM(本例では、ROM0(5010)、ROM1(5411)等が用いられる)のアクセスタイムに依存する。
ROMへのアクセスによってプログラムの立ち上げるためには、圧縮していない状態でプログラムを格納する必要があり、データ量は圧縮したときに比べて数倍になるため、コストが高くなる欠点がある。
主電源オンからの立ち上げ時、省電力モードからの復帰時のいずれも、短い時間で立ち上げることが望ましいが、様々な制約があるので、実際には、省電力モードからの復帰時間の方をより短くするような条件設定をしなくてはならない。
プログラムROMは、ASIC1(5405)に接続されており、ASICの端子を減らすために、ROMにアクセスのためのデータバス幅は、CPU(5404)のデータバス幅よりも、少なく設計している。
通常は主電源オンでROMから、命令を実行し、途中から命令をRAM(本例では、MEM(5406)が用いられる)上にコピーし、RAMの容量がゆるせば、全てのROMのプログラムをRAM上にコピーし、RAMの容量が少ない場合は、どうしても高速に実行しなくてはならない部分をRAMにコピーして実行するような方法をとる。
このため、ブート時にはROMのコードをRAMにコピーする時間が余分にかかる。
上記した動作条件でプログラムROMをアクセスし、プログラムのブートを行う場合、即ち、RAMに展開しない場合のブート処理手順の例を図9に示す。
図9に示すように、例示したブート手順は、電源オンからOSのカーネルのブートにより終了する。その間に、モニタの初期化(ステップS101)、自己診断の初期化(ステップS102)、CPUテスト(ステップS103)、ASIC、MEMテスト(ステップS104)、エンジン、割り込みテスト(ステップS105)、操作部の初期化(ステップS106)、KEY情報取得(ステップS107)、診断終了処理(ステップS108)、PCIコンフィグ(ステップS109)、OSカーネルブート(ステップS111)の各プログラムのブートを行う。
図10は、図9に示した、RAMに展開しない場合のブート処理手順を行ったときの各ステップの処理に要した時間の配分を示す。同図は、横軸を時間(ms)軸として、0msの“モニタの初期化”で始まり、“OSカーネルブート”で終了する各ブート処理の所要時間を示している。
なお、ブート手順はOSカーネルのブートまで説明しているが、MFPがコピー可能となり、プリンタがプリント可能となるために、カーネルブート後、ドライバのロードやアプリケーションのロードが必要である。
上記のRAMに展開しない場合のブート処理手順に対し、ROMに圧縮したプログラムを格納し、ブート時にRAMに展開する場合のブート処理手順の例を図11に示す。
図11に示すブート処理手順は、図9に示した手順におけると変わらないが、PCIコンフィグ(ステップS109)とOSカーネルブート(ステップS111)との間に、カーネルの伸長・RAMへの展開(ステップS110)の処理手順が付加される。これ以外の手順は、基本的に図9に示した処理と変わりがない。
従って、データ圧縮された形でROMに格納されたプログラムに対し、伸長・RAMへの展開を必要とする分、ブートに要する時間が掛かる。
図12は、図11に示した、RAMに展開した場合のブート処理手順を行ったときの各ステップの処理に要した時間の配分を示す。図12に示すように、カーネルの伸長に要した時間分だけ、RAMに展開しない場合(図10、参照)に比べ長く掛かっている。カーネルの部分をROMからRAMへ伸長する時間は、通常、1秒〜4秒ほどかかる。また、ドライバのロードやアプリケーションのロードも同様に、RAMへ展開すれば、さらに時間が掛かることになる。
このため、電源投入時のブートは、RAMに展開する方式による場合でも、省電力モードへの移行の際に、RAM上に展開されたコードを保存したまま、モード移行を行うようにする(Suspend to RAMとよばれる)ことで、省電力モードから復帰する場合に、RAMに保存されているコードを実行することで、展開時間を省くことができ、システムが短時間で立ち上がり、コピーやプリンタ機能を持つMFPとして「コピー可能」、「プリント可能」状態になるまでを早くすることが可能になる。
(3)省電力モードからの復帰
電源制御等を司るサブ制御システムとしてのASIC2(5417)が、省電力モードからの復帰の制御を行う。
図8は、省電力モードにおいて電源がOFFされた制御システムの状態を示す図である。図8に示すように、省電力モード時には、図8中の網掛け表示で示す部分の電源、即ち、省電力モードにおいても、アクティブ(通電状態)にしておく、電源の制御部及び外部入力(例えば、ユーザの入力操作や外部装置を接続する各種I/F経由の入力等)に対する応答・監視部を除いて、他の部分の電源をOFF状態とする。従って、サブ制御システムとしてのASIC2(5417)(図5、参照)が担う制御機能に必要な手段として、電源の制御部及び外部入力に対する応答・監視部を省電力モードにおいても、アクティブな状態に保つ。
図5に示したASIC2(5264)(図1では、ASIC2(5417)として示す)は、内部にCPU(5370)を有し、ソフトウエアによって制御される(以下、このソフトウエアシステムを「サブシステム」と記す)。
サブシステムはiTron等の組み込みOS上のタスクとして実現される。各タスクは、メッセージによって通信し、通信ドライバを介してメインシステムと通信しながら制御を行う。
図13は、本実施形態に係るサブシステムの内部構成のブロック図を示す。
図13のソフトウエア構成におけるブロックは、以下の構成要素(構成部)を示す。
1301:サブマネージャ
1302:モニタシェルタスク
1304:PM(パワーマネジメント)タスク
1305:SW_iFilter(ネットワーク)タスク
1306:通信ドライバ
1307:USB応答タスク
1308:パネルタスク
1309:エラー割り込みタスク
1310:GIO(汎用IOポート)タスク
1311:Watchdogタスク
1312:タイマタスク
1313:パフォーマンスモニタタスク
1314:PM(パワーマネジメント)HISR(高レベル割り込みサービスルーチン)
1315:iFilter(ネットワーク)HISR
1316:通信HISR
1317:USB_HISR
1318:パネル HISR
1319:エラー割り込みHISR
1320:GIO(汎用IOポート)HISR
なお、上記のPM、iFilter、通信、USB、パネル、エラー割り込み、GIOの各HISR(高レベル割り込みサービスルーチン)は、それぞれ対応するタスクのハードウェアを制御するルーチンである。
以下、上記の構成を有するサブシステム(図13)が行う省電力モードの動作例について説明する。
MFP機全体のパワーオンでサブシステムを起動したあと、各タスクは初期化される。サブシステムは、省電力モード時にも、通電状態にされているために、継続して動作する。省電力モード時に、各タスクは、対応するASICの部分(外部周辺機器を含む)を監視し、監視結果が復帰条件を満たす場合にPM(パワーマネジメント)の制御を通じて、MFP機を省電力状態から復帰させることができる。
例えば、GIOは、汎用IOポートを示すが、ハードウェア的に、省電力状態にある操作部のキー検知や、MFP機のスキャナにおける圧板検知等のセンス信号を受取るように構成されているものとする。これらのラインの変化をGIOタスク(1310)は、省電力状態時に、検知し、状態の遷移を監視する。
図14は、GIOタスク(1310)の状態遷移表を示す。図14に示す表は、左欄に上から下に向かう時間の推移に沿って生じる「イベント」を、上欄に左から右に向かう時間の推移に沿ってその時の「状態」を記し、また、マトリクスの交わる部分にタスクのメッセージの送信などの「動作」を記している。つまり、状態遷移表は、タスクがサブシステムで生じるイベントを各部からのメッセージ(本例では主としてサブマネージャタスク(1301)からのメッセージ)によって知ることで状態遷移を起こし、状態遷移に伴いメッセージ送信等の動作を行うことを示す。
図14において、GIOタスク(1310)は、主としてサブマネージャタスク(1301)からのメッセージによって、省電力モードへ移行した後、省電力状態にあるときに、復帰要因となるGIOポートからの割り込みを検出したとき、サブマネージャタスク(1301)に対して復帰要因検出メッセージを送信する。
この省電力モードからの復帰要因の検出は、GIOタスク(1310)だけでなく、USB応答タスク(1307)、パネルタスク(1308)、タイマタスク(1312)、SW_iFilter(ネットワーク)タスク(1305)、エラー割り込みタスク(1309)等を監視する各タスクによっても行われる。なお、USB応答タスク(1307)については、図20を用いて後述する。
図15は、サブマネージャタスク(1301)の状態遷移表を示す。
サブマネージャタスク(1301)は、サブシステムを統括するタスクであり、図15の状態遷移表には、サブシステム全体の状態遷移が示されている。
図15に示すように、サブシステム起動後、メイン制御システムで画像入出力処理が行われる通常の動作モードを経て省電力モードへ移行する。その後、サブシステムの制御により省電力モードの動作中にある“状態4”において、GIOタスク(1310)から送信されてくる、省電力モードからの復帰要因検出メッセージ(図14に関する上記説明、参照)を受取ることにより、サブマネージャタスク(1301)は、サブシステムを “状態5”のメイン復帰中に移行させるべく、各タスクに “メイン復帰準備要求”のメッセージを送信する。この後、“状態5”でメイン復帰実行要求メッセージを送出するが、この時点でPM(パワーマネジメント)タスク(1304)によりASIC2(5264)(図1では、ASIC2(5417)として示す)のパワーマネジメント部を操作してメイン制御システムであるASIC1(5202)(図1では、ASIC1(5405)として示す)の復帰を行う。
図16は、PM(パワーマネジメント)タスク(1304)の状態遷移表を示す。
PM(パワーマネジメント)タスク(1304)は、メイン復帰実行要求をうけたときにパワーマネジメント部のレジスタ(図5のPM(5362)、IREG(5361))を操作して省電力復帰シーケンスをつくりだすことである。なお、本実施形態では、省電力モードに移行するシーケンスはメインから要求をうけたハードウェアが行う。
図16において、サブシステムの制御により省電力モードの動作中にある“状態4”において、サブマネージャタスク(1301)から送信されてくる、メイン復帰準備要求メッセージを受取り、その後“状態5”において、再び送信されてくる、メイン復帰実行要求メッセージ(図15に関する上記説明、参照)を受取ることにより、PM(パワーマネジメント)タスク(1304)は、メイン制御システムの復帰処理行う。
上記では、省電力モードからの復帰動作に注目し、サブシステムの動作を関連するタスクの状態遷移により説明した。そこで、以下には、メイン制御システムとサブシステムとを関連付け、全体として、省電力モードの移行/復帰処理のシーケンスをまとめる。
図17は、移行シーケンスの例を示し、図18は、復帰シーケンスの例を示す。
図17、図18は、いずれも省電力モード時に電源が制御されるメインシステムと、省電力モードの移行/復帰動作を制御するサブシステムのサブマネージャと、同サブシステムの各タスクの各部間で行われるメッセージの送受、及び各部内で行われる処理のシーケンスを示す。図17の移行シーケンスではP1〜P15とし、図18の復帰シーケンスではP21〜P36として付した番号の順に従って、シーケンスを実行する。
なお、図17、図18において、各部間で行われるメッセージの送受は、上記したサブマネージャの状態遷移表(図15)及びGIOタスクの状態遷移表(図14)やPM(パワーマネジメント)タスクの状態遷移表(図16)に示される動作に対応する。
また、各部内で行われる処理として、図17の移行シーケンスでは、サブマネージャからの要求に応えて各タスクが行う“移行準備処理”(P6)と“移行実行処理”(P15)、メイン制御システムがサブマネージャに移行実行を要求する前に行う“移行処理”(P10)及びサブマネージャが行うタイマによる管理処理(P5、P8、P11、P13)が含まれる。図18の復帰シーケンスでは、各タスクの“復帰要因検出”(P21)、サブマネージャからの要求に応えて各タスクが行う“メイン復帰準備処理”(P25)と“メイン復帰処理”(P30)、PMタスクからの指示に応じてメイン制御システムが行う“メイン起動処理”(P32)及びサブマネージャが行うタイマによる管理処理(P24、P27、P29、P34)が含まれる。
上記のシーケンスは、GIOタスクによる復帰要因検出によりPM(パワーマネジメント)タスクを動作させ、省電力モードからの復帰を行うものであった。
GIOタスクによると同様に、各ハードウェアを検知するタスクを用意することにより、それぞれの復帰要因に対応した処理が可能となる。ここでは、パネルタスクによっても、復帰要因の検知を行う。
図19は、パネルタスク(1308)の状態遷移表を示す。
本実施形態に示す例では、パネルタスクは、操作部(5416)のパネルのコントローラデバイスに対してコマンドを送出し、ポーリングを行うことでキー情報を取得する。省電力状態のときには、キースキャンタイマによりポーリングを行う。
図19において、パネルタスク(1308)は、サブマネージャタスク(1301)からのメッセージによって、省電力モードへ移行した後、“省電力復帰監視中”の状態にあるときに、復帰操作部(5416)のパネルのコントローラデバイスから要因となるキーONの割り込みを検出したとき、サブマネージャタスク(1301)に対して復帰要因検出メッセージを送信する。
また、本実施形態においては、従来から行われてこなかったが、USBデバイス(USBによって接続される周辺デバイス)からのデータ入力によって、省電力モードからの復帰をサポートできるようにする。
このために、USB応答タスク(1307)は、省電力モードからの復帰要因としてのUSBデバイスのデータ入力の検出を行う。
図20は、復帰要因の検出を可能としたUSB応答タスク(1307)の状態遷移表を示す。
図20において、USB応答タスク(1307)は、メイン制御システムが稼動(通常モードの画像の入出力処理実行)した後、“状態3”の省電力移行中に、省電力移行実行要求を受信すると、“状態4”の省電力モードに入る。このときに同時に、USB応答タスク内で復帰要因検出を開始する。省電力モード中の“状態4”において、復帰要因としてのUSBデバイスからのデータ入力を検出したとき、USB応答タスク(1307)は、サブマネージャタスク(1301)に対して復帰要因検出メッセージを送信する。
USB応答タスク(1307)からの復帰要因検出メッセージを受信したサブマネージャタスク(1301)は、上記した他の復帰要因検出時と同様に、PM(パワーマネジメント)タスク(1304)に指示して、メイン制御システムの復帰処理を行う。
サブシステム(ASIC2(5264)、図1では、ASIC2(5417)として示す)の制御下のUSBは、汎用のI/Fとして外付けの周辺機器を接続し、プラグアンドプレイに対応した動作を可能とする。従って、省電力時にもUSBをアクティブ(通電状態)に維持すると、ユーザは、特別な操作を要することなく、随時USBデバイスを利用してデータ入出力を行うことができる。また、ユーザは、プラグアンドプレイで自由に各種のUSBデバイスを使用できる。
上記のサブシステムは、メイン制御システムの省電力モードからの復帰動作をUSBにおけるデータ入力の検知を条件に行う構成とした例である。同様にして、本発明のサブシステム(ASIC2(5264)は、メイン制御システムの省電力モードからの復帰動作をUSBの活線挿抜の検知を条件に行う構成にすることもできる。即ち、省電力モード中の“状態4”において、復帰要因としてのUSBデバイスの活線挿抜(USBケーブルの挿入又は引き抜き)を検出したとき、USB応答タスク(1307)は、サブマネージャタスク(1301)に対して復帰要因検出メッセージを送信する。USB応答タスク(1307)からの復帰要因検出メッセージを受信したサブマネージャタスク(1301)は、他の復帰要因検出時と同様に、PM(パワーマネジメント)タスク(1304)に指示して、メイン制御システムの復帰処理を行う。
本発明のMFPは、このようなUSBの利用をサポートするための仕組みをメイン制御システムにソフトウェア構成で装備する。
図21は、コントローラ(5410)の汎用OS層の構成を示す。なお、汎用OS層は、先に示したコントローラ(5410)のソフトウェア構成(図2)の要素である。
図21のソフトウエア構成におけるブロックは、以下の構成要素(構成部)を示す。
2001:プロセスI/F
2002:仮想記憶メモリ管理
2003:プロセス管理
2004:ネットワークプロトコルスタック
2005:ファイルシステム(機内で生成される画像ファイル等の記憶部を管理する)
2006:各種ドライバ(エンジンのドライバを含む)
2007:ACPI(Advanced Configuration Power Interface)ドライバ(ハードウェアの省電力機構をサポート)
2008:ネットワークドライバ
2009:USBドライバ
図21に示すOS層は、ハードウェア資源を管理し、上位層のI/Fを提供する。ACPIドライバ(2007)は、CPU(5404)等のハードウェアの省電力機構をサポートするためのドライバである。このドライバの操作により、ハードウェアの省電力状態を制御する。ここでは、IBM-AT互換アーキテクチャで実現されているACPIと同等の機能を搭載することにより実施可能である。なお、USBドライバ(2009)と関連する動作については、後記で詳述する。
USBドライバ(2009)は、USBのハードウェアを管理し、プロセスI/F(2001)を介してプロセス層に対して機能を提供する。
ネットワークドライバ(2008)は、ネットワークハードウェアを駆動し、ネットワークプロトコルスタック(2004)に対して、ハードウェアに依存しないネットワーク通信機能を提供する。
メイン制御システムは、ハードウェア資源を管理するOS層として、図21に示すような構成を備えることにより、メイン制御システムにおけるCPU(5404)等の電源をOFFとする省電力動作をサポート可能とする。
即ち、省電力状態になるとハードウェア的にはRAM上のデータは保存されたままCPU(5404)がOFF状態になり、復帰時にはACPIドライバ(2007)から制御がもどったように動作する。
ただし、サブシステム(ASIC2(5264)、図1では、ASIC2(5417)として示す)は、常時、アクティブ(通電状態)に維持されているので、サブシステムの制御下にあるハードウェアの状態は、実際には、省電力中に発生するデバイスの挿抜等により、変化してしまう、といったことが起こり得る。
また、デバイスによっては、省電力に移行する際に、事前の処理を行ってから、省電力状態に移行することを必要とする場合がある。USBドライバの場合、USBの状態がconfigured状態であるときに、バルクイン/アウト等のエンドポイントに関してデータの送受信が可能となる。しかし、省電力状態では、データを受信したくはないため、通常動作状態でのDMAをストップしておき、省電力モード中にバルクアウトポートに受信データがきた場合、ハードウェアでNAK応答をかえすようにしておき、省電力状態から復帰した後、データ受信処理を行うようにする、といった仕組みを持つ。こうした仕組みがある場合、従来、メイン制御システム(USBドライバ)は、USBデバイスの状態の変化を認識できない。
上記のように、USBドライバが、省電力モード中に生じるUSBデバイスの状態変化を認識できないために、省電力モードからの復帰後、移行直前にメイン制御システム(USBドライバ)側で処理に用い、移行時に保持した状態遷移を示すデータと、省電力時に変化したUSBデバイスの状態との間に不整合が生じ、動作に不具合が生じる可能性がある。
そこで、本実施形態のUSBドライバは、USBの状態を省電力移行時に記録しておき、省電力モードからの復帰後、実際にロードされているUSBデバイスのハードウェアの状態を移行時に記録した状態と比較し、不整合があれば修復処理を行うことにより、状態遷移を一致させる。こうすることにより、省電力中にUSBで接続されたデバイス(例えばホストPC等)の電源OFF/ON 、或いはUSBケーブルの活線挿抜が行われた場合にも、復帰後、状態を整合させ、正常な動作を続行可能とする。
図22は、USBデバイスの状態遷移を示す。ここでは、UML(unified modeling language)等で使用されているHarelの状態遷移図の記法を用いている。この記法では入れ子の状態の記述を許す。
図22の遷移図におけるブロックは、以下の要素を示す。
2101:Not Attached(未接続状態)
2102:Attached(接続状態)
2103:Powered(通電状態)
2104:Default(デフォルト状態)
2105:Address(アドレス状態)
2106:Configured(設定状態)
2108:Suspended(中止状態)
以上は、状態を示す。また、以下は、操作を示す。
2111:Connect(接続)
2112:Disconnect(接続解除)
2121:Hub Configure(ハブの設定)
2122:Hub Reset or Hub Deconfigure(ハブリセット又はハブの設定解除)
2131:Reset(リセット)
2132:Address Assign(アドレス割当て)
2133:Deconfigure(設定解除)
2134:Configure(設定)
2141:Suspend(中止)
2142:Resume(復帰)
一般的に、USBファンクション側のデバイスチップでは、状態遷移自体の管理は、ハードウェアロジックで実現しているものが一般的である。従って、USBデバイスドライバは、その状態を監視あるいは割り込みを受けることで変化を知ることができる。
図22に示す状態遷移で動作するUSBデバイスが、省電力移行直前にConfigured(2106)であったとして、省電力からの復帰後、Powered(2103)であるとすると、直接の状態遷移はないため、省電力中に抜き挿し等でAttached(2102)或いはNot Attached(2101)まで状態がもどってPowered(2103)に移行したと考えられる。なお、この場合には、何回も抜き挿し等の遷移をくりかえしていた可能性もあり、また、こうした動作は、USBに関する活線挿抜等を省電力モードからの復帰要因としない、という前提が存在するときに起き得る。
USBドライバの構造に依存するが、実際の遷移がどのようであったにせよ、USBドライバの状態を最短の遷移を行ったと仮定し、この仮定に従って動作させても、USBドライバの状態に矛盾は生じないように作成しておけば、最短の遷移で状態を戻すことでUSBドライバの状態と実際のUSBデバイスの状態を整合することができる。ここに、USBデバイスの状態を表す情報として、下記のようにシリアル番号を対応して付しておくとする。
・Not Attached=0
・Attached=1
・Powered=2
・Default=3
・Address=4
・Configured=5
なお、Suspended(2108)の状態は、ハードウェアのみが感知し、ソフトウエア的には移行復帰に関与しないものとして無視する。
このとき、移行直前の状態をx、復帰後の状態がyであるとする。x<yのときは、xから始まってyまでの状態遷移を考えればよい。y<xであって、yが0又は1のときは直接0又は1への状態遷移を考えればよい。yが2以上のときは、1に移行してyまであがる状態遷移を考えればよい。この状態遷移を推定状態遷移と呼ぶことにし、状態の遷移のシーケンスを推定状態遷移列と呼ぶことにする。
このように考えることができる理由について、以下に説明する。移行直前状態xがどのような状態であったにしろ、復帰後状態yが0であるときは、実際にどんな遷移であったとしても、結果的にはUSBの接続は切られてしまった状態(Not Attached=0)であると考えてよい。これは、図22の状態遷移図のDisconnectによって任意状態からNot Attachedに移行できることから、いかなる状態からもNot Attached=0に移行可能なようにUSBドライバは作製されているからである。
同様に、xに関係なくyがConnect直後の状態(Attached=1)であったなら、どんな状態であったにしろ、ハブリセット(Hub Reset)等がかかった状態であると考えてよい。これも図22の状態遷移図のハブリセット又はハブの設定解除(Hub Reset or Hub Deconfigure)により直接Attached=1に移行したか、いったんNot Attached=0に移行してからAttached=1に移行したかのどちらかになるが、後者の遷移の場合でも直接Attached=1に移行したと推定しても、USBドライバの状態は整合できる。両者の違いを無視して、直接Attachedに移行したと推定することでUSBドライバの状態を整合させる。
yが2以上の場合、図22の状態遷移図からわかるとおり、x>yのとき、番号付けにより、番号の大きい状態から小さい状態への遷移はDeconfigureを除いて、存在しない。Deconfigureを特別扱いしてConfigured=5からAddress=4のときのみ直接遷移を考えてもよいが、コーディングの容易さ、および、実際のUSBの動作としてDeconfigureの遷移は一般的ではないため、y>=2、x>yのときはいったん全てAttached=1に移行してyの状態まで遷移したと推定して、USBドライバの状態を整合させる。
USBドライバの状態と、実際のUSBデバイスの状態に起きる不整合を修復するために、上記した条件によって推定状態遷移列を生成する。なお、USBデバイスは、上記の状態Configured=5のときに、通信可能状態となり、このとき、USBデバイスは、本発明に係るMFPとの間でデータの入出力を行うことが可能である。
図23は、推定状態遷移列の生成処理のフロー図を示す。
図23のフロー図において、まず最初に、x=yであるか否かを判定する(ステップS201)。
ここで、x=yであれば、状態遷移が生じてない場合であるから、空の推定状態遷移列{ }を生成結果とし(ステップS202)、処理を終了する。
他方、x=yでなければ、状態遷移が生じている場合である。この場合、Configured=5からAttached=1或いはNot Attached=0に戻るという遷移が生じているか否かにより処理を分岐させる。まず、x<yであるか否かを判定する(ステップS203)。
ここで、x<yであれば(ステップS203でYES)、単純にxから1づつ増加してyまでの推定状態遷移列{x+1,・・・,y}を生成結果とし(ステップS204)、処理を終了する。これは、一度、Attached=1或いはNot Attached=0に戻る遷移があったか否かにかかわらず、復帰後の状態が省電力前の状態より先に進んでいるため、現在の状態から復帰後の状態へ遷移していけばよいからである。
また、x>yであれば(ステップS203でNO)、Configured=5からAttached=1或いはNot Attached=0に戻る遷移が生じている場合である。この場合、復帰後の状態yがAttached=1或いはNot Attached=0であるか否かにより処理を分岐させる。まず、y=0或いはy=1であるか否かを判定する(ステップS205)。
ここで、y=0又はy=1であれば、すぐにyに行く推定状態遷移列{y}を生成結果とし(ステップS206)、処理を終了する。
一方、y=0又はy=1でなければ、すぐに1に移行してからyまで行く推定状態遷移列{1,…,y}を生成結果とし(ステップS207)、処理を終了する。
たとえば、移行直前の状態がconfigured=5で、復帰後の状態がdefault=3になっていたら、上記の条件より、一旦、attached=1に移行したあとの状態遷移となり、推定状態遷移列は{1,2,3}となる。
上記のようにして生成した推定状態遷移列に従って、USBドライバの状態と、実際のUSBデバイスの状態に起きる不整合を修復する。
省電力状態を制御するACPIドライバ(2007)の操作により、省電力過程でおきる上記した不整合の修復処理を行う。
ACPIドライバ(2007)は、移行・復帰処理の一環として、上記した修復処理を行う。移行・復帰処理は、移行・復帰時に不整合の修復に必要な処理フローを実行するが、そのほかに、移行、復帰それぞれの処理に用いる移行フックルーチン、復帰フックルーチンを登録する処理を行う。
図24は、移行・復帰処理のフローを示す。また、図25は、移行フックリストへの移行フックルーチンを登録する処理フローを示し、図26は、復帰フックリストへの復帰フックルーチンを登録する処理フローを示す。
ACPIドライバ(2007)は、図24のフローに示すように、省電力モードへの移行に先だって、移行フックリストに登録された移行フックルーチンの中から、該当するデバイスの移行処理のルーチンを呼び出す(ステップS301)
移行フックリストへの登録処理は、図25に示す処理フローにしたがって、各デバイスドライバ(本例のUSBドライバ(2009)を含む)等で初期化時に実装したものを登録する.登録処理は、移行フックのリンクリストの最後にフックエントリすることにより、移行フックリストに追加する(ステップS401)。
次いで、上記の様にして移行フックリストに登録しておいた中から呼び出した移行フックルーチンを用いて、省電力(STR)移行処理を行う(ステップS302)。
図27は、USBドライバ(2009)で登録する移行フックルーチンを示す。
省電力モード移行前にConfiguredである場合、データ受信可能で、省電力モード中にデータパケットがホストから来る可能性がある。データ受信可能であるときに、図6のUSBのDMAを停止しておくと、USB制御部はデータパケットを受信したときUSBバス上でNAK応答をおこない、データを受信しない状態となる。データ受信状態を検知すると、省電力モードからの復帰要因であるので復帰処理をおこなう。復帰後、データ受信を再開するためにDMAを開始する必要がある。
省電力(STR)移行処理(ステップS302)では、USB移行フックルーチン(図27)によって、移行直前のUSBデバイスの状態(図22の状態遷移図、参照)を記録する(ステップS601)。その後、サブシステムを介して送信されてくるUSBデバイスからのデータを受信しないように、DMAを停止し(ステップS602)、移行フックルーチンを抜ける。
省電力モードからの復帰の際には、省電力(STR)復帰処理を行う(ステップS303)。このとき、復帰処理に必要となる、該当するデバイスの復帰処理のルーチンを復帰フックリストに登録された復帰フックルーチンの中から呼び出す(ステップS304)。
復帰フックリストへの登録処理は、図26に示す処理フローにしたがって、各デバイスドライバ(本例のUSBドライバ(2009)を含む)等で初期化時に実装したものを登録する.登録処理は、復帰フックのリンクリストの最後にフックエントリすることにより、復帰フックリストに追加する(ステップS501)。
また、図28は、USBドライバ(2009)で登録する復帰フックルーチンを示す。
省電力(STR)復帰処理では、USB復帰フックルーチン(図28)によって、先の省電力(STR)移行処理で記録した移行直前のUSBデバイスの状態(図22の状態遷移図、参照)と現在のUSBデバイスの状態をもとに、推定状態遷移列を求める(ステップS701)。ここで求める推定状態遷移列は、上記した推定状態遷移列の生成処理(図23参照)による。
次いで、前のステップで求めた推定状態遷移列にしたがって、USBドライバ(2009)のデバイスの状態を遷移させて状態情報を現在のUSBデバイスの状態に整合させる(ステップS702)。その後、状態に応じて、サブシステムを介して送信されてくるUSBデバイスからのデータを受信するように、DMAを開始し(ステップS703)、復帰フックルーチンを抜け、ACPIドライバ(2007)による移行・復帰処理を終了する。
上記の省電力モードの動作によって、USBに接続されたデバイスとメイン制御システムで用いるデバイスのドライバとの間に生じ得るデバイス状態の不整合を修復することにより、省電力モードからの復帰時の動作に不具合が起きることがなく、適正な動作を保証することが可能になる。
本発明の実施形態に係る画像処理装置のコントローラのハードウェア構成を示すブロック図である。 図1のコントローラのメイン制御システムに搭載されるソフトウエア構成を示す図である。 図1のコントローラにおけるASIC1の内部構成を示すブロック図である。 図1のコントローラにおけるASIC1のメモリマップを示す図である。 図1のコントローラにおけるASIC2の内部構成を示すブロック図である。 ASIC2の他の例における内部構成を示すブロック図である。 主電源オンから省電力へと移行し、その後、省電力から再び通常処理の動作に復帰する間の電力の状態遷移を示す図である。 省電力モードにおいて電源がOFFされた制御システムの状態を示す図である。 RAMに展開しない場合のプログラムのブート処理手順を説明するためのフロー図である。 図9のブート処理手順を行ったときの各処理ステップに要した時間の配分を示す図である。 RAMに展開する場合のプログラムのブート処理手順を説明するためのフロー図である。 図11のブート処理手順を行ったときの各処理ステップに要した時間の配分を示す図である。 図1のコントローラのサブシステム(ASIC2)に搭載されるソフトウエアの構成を示す図である。 図13のサブシステムにおけるGIOタスクの状態遷移表を示す図である。 図13のサブシステムにおけるSubマネージャの状態遷移表を示す図である。 図13のサブシステムにおけるPMタスクの状態遷移表を示す図である。 図1のコントローラによる省電力への移行シーケンスの例を示す図である。 図1のコントローラによる省電力からの復帰シーケンスの例を示す図である。 図13のサブシステムにおけるパネルタスクの状態遷移表を示す図である。 図13のサブシステムにおけるUSBタスクの状態遷移表を示す図である。 コントローラ(図1)のメイン制御システムにおける汎用OS層の構成を示す図である。 サブシステム(ASIC2)を介して接続されるUSBデバイスの状態遷移を示す図である。 デバイスの推定状態遷移列を生成する処理を説明するためのフロー図である。 ACPIドライバが行う省電力移行・復帰処理を説明するためのフロー図である。 移行フックリストへの移行フックルーチンを登録する処理を説明するためのフロー図である。 復帰フックリストへの復帰フックルーチンを登録する処理を説明するためのフロー図である。 USBドライバで登録する省電力状態への移行フックルーチンを説明するためのフロー図である。 USBドライバで登録する省電力状態からの復帰フックルーチンを説明するためのフロー図である。
符号の説明
5401 コントローラ
5403、5267 エンジン
5404、5201 CPU
5405、5202 ASIC1
5406 MEM
5407 HDD
5408 SD
5410 ROM0
5411 ROM1
5412 NVRAM
5416 操作部
5417、5264 ASIC2
5420 ネットワークI/F
5421 USB2.0I/F
5014 汎用OS
5370 CPU
1301 サブマネージャ
1304 PMタスク
1305 SW_iFilterタスク
1306 通信ドライバ
1307 USB応答タスク
1308 パネルタスク
1309 エラー割り込みタスク
1310 GIOタスク
1312 タイマタスク
2001 プロセスI/F
2007 ACPIドライバ
2008 ネットワークドライバ
2009 USBドライバ

Claims (12)

  1. 画像入力、入力画像の出力用データへの処理、画像出力の各手段を制御するメイン制御システムと、前記メイン制御システムへの電源供給を制御することにより、省電力モードへの移行動作、省電力モードからの復帰動作を行うとともに、データの入出力に用いるネットワーク及びUSBに常時、応答・発信を可能とするサブ制御システムとを有する画像処理装置であって、
    前記メイン制御システムが有するUSBデバイスドライバの状態を保持する保持手段と、
    前記USBデバイスドライバの状態を遷移させる遷移手段と、
    前記USBの状態を取得する取得手段と
    を有し、前記保持手段は、省電力モードへの移行前に、前記USBデバイスドライバの状態を保持し、かつ、前記遷移手段は、省電力モードからの復帰後に前記取得手段が取得した前記USBの状態と、前記保持手段により保持された前記USBデバイスドライバの状態とが異なる場合には、保持された前記USBデバイスドライバの状態と、取得された前記USBの状態とを比較して前記USBデバイスドライバの状態を遷移させるための推定状態遷移列を決定し、前記推定状態遷移列に従って前記USBデバイスドライバの状態を遷移させることにより復帰動作を行うことを特徴とする画像処理装置。
  2. 前記遷移手段は、取得された前記USBの状態が保持された前記USBデバイスドライバの状態より通信可能状態に近い場合には、保持された前記USBデバイスドライバの状態から、取得された前記USBの状態に向けて状態遷移するように推定状態遷移列を決定することを特徴とする請求項1に記載の画像処理装置。
  3. 前記遷移手段は、保持された前記USBデバイスドライバの状態が取得された前記USBの状態より通信可能状態に近い場合には、初期状態から、取得された前記USBの状態に向けて状態遷移するように推定状態遷移列を決定することを特徴とする請求項1に記載の画像処理装置。
  4. 前記画像処理装置は、省電力モード時に前記USBのデータ転送用DMAを停止させ、省電力モードから復帰する際に、前記状態遷移を行った後の前記USBデバイスドライバの状態に応じて前記データ転送用DMAを開始することを特徴とする請求項1乃至3のいずれか一項に記載の画像処理装置。
  5. 前記サブ制御システムは、前記メイン制御システムの省電力モードからの復帰動作を前記USBにおけるデータ入力の検知を条件に行うことを特徴とする請求項1乃至4のいずれか一項に記載の画像処理装置。
  6. 前記サブ制御システムは、前記メイン制御システムの省電力モードからの復帰動作を前記USBの活線挿抜の検知を条件に行うことを特徴とする請求項1乃至4のいずれか一項に記載の画像処理装置。
  7. 画像入力、入力画像の出力用データへの処理、画像出力の各手段を制御するメイン制御システムと、前記メイン制御システムへの電源供給を制御することにより、省電力モードへの移行動作、省電力モードからの復帰動作を行うとともに、データの入出力に用いるネットワーク及びUSBに常時、応答・発信を可能とするサブ制御システムとを有する画像処理装置の制御方法であって、
    前記メイン制御システムが有するUSBデバイスドライバの状態を保持する保持手順と、
    前記USBデバイスドライバの状態を遷移させる遷移手順と、
    前記USBの状態を取得する取得手順と
    を有し、前記保持手順は、省電力モードへの移行前に、前記USBデバイスドライバの状態を保持し、かつ、前記遷移手順は、省電力モードからの復帰後に前記取得手順により取得された前記USBの状態と、前記保持手順により保持された前記USBデバイスドライバの状態とが異なる場合には、保持された前記USBデバイスドライバの状態と、取得された前記USBの状態とを比較して前記USBデバイスドライバの状態を遷移させるための推定状態遷移列を決定し、前記推定状態遷移列に従って前記USBデバイスドライバの状態を遷移させることにより復帰動作を行うことを特徴とする画像処理装置の制御方法。
  8. 前記遷移手順は、取得された前記USBの状態が保持された前記USBデバイスドライバの状態より通信可能状態に近い場合には、保持された前記USBデバイスドライバの状態から、取得された前記USBの状態に向けて状態遷移するように推定状態遷移列を決定することを特徴とする請求項7に記載の画像処理装置の制御方法。
  9. 前記遷移手順は、保持された前記USBデバイスドライバの状態が取得された前記USBの状態より通信可能状態に近い場合には、初期状態から、取得された前記USBの状態に向けて状態遷移するように推定状態遷移列を決定することを特徴とする請求項7に記載の画像処理装置の制御方法。
  10. 省電力モード時に前記USBのデータ転送用DMAを停止させ、省電力モードから復帰する際に、前記遷移手順により前記状態遷移を行った後の前記USBデバイスドライバの状態に応じて前記データ転送用DMAを開始することを特徴とする請求項7乃至9のいずれか一項に記載の画像処理装置の制御方法。
  11. 前記メイン制御システムの省電力モードからの復帰動作を前記USBにおけるデータ入力の検知を条件に行うことを特徴とする請求項7乃至10のいずれか一項に記載の画像処理装置の制御方法。
  12. 前記メイン制御システムの省電力モードからの復帰動作を前記USBの活線挿抜の検知を条件に行うことを特徴とする請求項7乃至10のいずれか一項に記載の画像処理装置の制御方法。
JP2006202443A 2005-07-28 2006-07-25 画像処理装置とその制御方法 Active JP4361073B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2006202443A JP4361073B2 (ja) 2005-07-28 2006-07-25 画像処理装置とその制御方法
US11/663,955 US7765413B2 (en) 2005-07-28 2006-07-26 Image processing device and method of controlling the image processing device which estimates a state-transition sequence for a USB driver
EP06781687.6A EP1909474B1 (en) 2005-07-28 2006-07-26 Image processor and its control method
PCT/JP2006/314775 WO2007013512A1 (ja) 2005-07-28 2006-07-26 画像処理装置とその制御方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2005218792 2005-07-28
JP2005225240 2005-08-03
JP2006202443A JP4361073B2 (ja) 2005-07-28 2006-07-25 画像処理装置とその制御方法

Publications (2)

Publication Number Publication Date
JP2007068156A JP2007068156A (ja) 2007-03-15
JP4361073B2 true JP4361073B2 (ja) 2009-11-11

Family

ID=37683403

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006202443A Active JP4361073B2 (ja) 2005-07-28 2006-07-25 画像処理装置とその制御方法

Country Status (4)

Country Link
US (1) US7765413B2 (ja)
EP (1) EP1909474B1 (ja)
JP (1) JP4361073B2 (ja)
WO (1) WO2007013512A1 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4895990B2 (ja) * 2007-12-20 2012-03-14 株式会社リコー 画像処理装置及びデータ消去方法
JP5460167B2 (ja) 2009-07-31 2014-04-02 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及び制御プログラム
JP5326918B2 (ja) * 2009-08-05 2013-10-30 株式会社リコー 電子機器,ソフトウェア更新方法,プログラム,および記録媒体
JP2011059426A (ja) * 2009-09-10 2011-03-24 Ricoh Co Ltd 画像形成装置
CN102033451A (zh) * 2009-10-06 2011-04-27 株式会社东芝 图像形成装置以及图像形成装置的控制的方法
JP2012226605A (ja) * 2011-04-20 2012-11-15 Canon Inc 情報処理装置、その制御方法、及びプログラム
JP5874399B2 (ja) * 2012-01-05 2016-03-02 株式会社リコー 処理装置
JP6007642B2 (ja) 2012-01-26 2016-10-12 株式会社リコー 情報処理装置、省電力制御方法、省電力制御プログラム
KR101859022B1 (ko) 2013-01-17 2018-06-28 에이치피프린팅코리아 주식회사 화상형성장치, 외부 장치와 연결 방법 및 컴퓨터 판독가능 기록매체
JP5986026B2 (ja) * 2013-03-21 2016-09-06 ルネサスエレクトロニクス株式会社 ホスト装置、ホスト装置の制御方法及び半導体装置
JP5800861B2 (ja) * 2013-06-24 2015-10-28 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及び制御プログラム
JP6263981B2 (ja) 2013-11-20 2018-01-24 株式会社リコー 情報処理装置、情報処理装置の起動方法、及び、プログラム
US10122543B2 (en) * 2013-11-20 2018-11-06 Entropic Communications, Llc Methods and systems for power management in communication devices based on cable connectivity
JP6289094B2 (ja) * 2013-12-27 2018-03-07 キヤノン株式会社 ネットワークインタフェース装置およびその制御方法
JP6336328B2 (ja) * 2014-05-02 2018-06-06 キヤノン株式会社 通信装置とその制御方法、及びプログラム
US9924059B2 (en) 2016-01-13 2018-03-20 Ricoh Company, Ltd. Apparatus having power-saving function, method of processing information, and computer program product
JP2018103383A (ja) * 2016-12-22 2018-07-05 キヤノン株式会社 画像処理装置およびその画像処理装置の制御方法またはプログラム
US10838740B2 (en) 2018-03-30 2020-11-17 Ricoh Company, Ltd. Information processing apparatus and startup method

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5812796A (en) * 1995-08-18 1998-09-22 General Magic, Inc. Support structures for an intelligent low power serial bus
TW382670B (en) * 1996-11-21 2000-02-21 Hitachi Ltd Low power processor
JP2002051195A (ja) 2000-08-02 2002-02-15 Canon Inc 画像読み取り装置、その制御方法、画像処理システム、及び記憶媒体
JP3895120B2 (ja) 2001-03-07 2007-03-22 株式会社リコー プログラマブルシーケンサ内蔵asic及び画像形成装置
EP1292109A1 (en) * 2001-08-27 2003-03-12 Ricoh Company, Ltd. Information processing system
JP2003084984A (ja) * 2001-09-12 2003-03-20 Canon Inc 情報処理装置、及び、情報処理方法、及び、制御プログラム、及び、制御プログラムを記憶した記憶媒体
US20030088796A1 (en) * 2001-11-06 2003-05-08 Soubhi Abdulkarim Communication adapter
JP2004287838A (ja) 2003-03-20 2004-10-14 Ricoh Co Ltd 割り込み制御コントローラ,割り込み制御方法,割り込み制御コントローラを備えた装置,割り込み制御プログラムおよび記録媒体
JP2005094679A (ja) 2003-09-19 2005-04-07 Ricoh Co Ltd ネットワークに接続された省エネルギーモード機能を備えた画像処理装置
JP2005094697A (ja) 2003-09-19 2005-04-07 Ricoh Co Ltd 画像読取装置
JP4695465B2 (ja) * 2004-09-28 2011-06-08 株式会社リコー 画像形成装置、ハードウェア制御方法、および、ハードウェア制御プログラム

Also Published As

Publication number Publication date
EP1909474A4 (en) 2008-07-30
US20080141050A1 (en) 2008-06-12
EP1909474A1 (en) 2008-04-09
US7765413B2 (en) 2010-07-27
JP2007068156A (ja) 2007-03-15
EP1909474B1 (en) 2019-04-24
WO2007013512A1 (ja) 2007-02-01

Similar Documents

Publication Publication Date Title
JP4361073B2 (ja) 画像処理装置とその制御方法
JP5065297B2 (ja) Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス
US7913072B2 (en) Information-processing apparatus and activation method thereof
JP5822527B2 (ja) 情報処理装置、その制御方法、および制御プログラム
JP2007296723A (ja) 電力切換え機能を持つ制御装置,画像形成装置および画像読取装置
US20030163744A1 (en) Information processing system, and method and program for controlling the same
US20090219569A1 (en) Information processing apparatus, information processing system, and information processing method
US20130007367A1 (en) Information processing apparatus and method of controlling same
JP2004303216A (ja) 情報処理装置,画像形成装置,プログラム起動時のエラー処理方法および記録媒体
JP5811611B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP2004112718A (ja) 画像処理装置
JP2008158991A (ja) Nand型フラッシュメモリの制御システム
JP2011013775A (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
JP2018078485A (ja) 情報処理装置および情報処理装置の起動方法
TWI840849B (zh) 計算系統、電腦實施方法及電腦程式產品
JP2017162177A (ja) 電子機器、復旧方法およびプログラム
JP2005339271A (ja) カード型メモリ、画像形成装置、画像形成装置起動方法
JP2003141501A (ja) 画像処理装置および画像処理装置の表示部制御方法およびプログラムおよび記憶媒体
CN107066072B (zh) 电子装置及其控制方法
JP2015215684A (ja) 情報処理装置及び情報処理プログラム
CN111541825B (zh) 电子装置及其控制方法
JP2007295371A (ja) 画像形成装置及びコンピュータプログラム
JP2003335028A (ja) 画像形成装置および状態情報管理方法
JP2014048865A (ja) 情報処理装置、および画像処理装置
JP2001027920A (ja) バスブリッジ回路及びそのパワーマネージメント方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090325

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: 20090804

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090811

R150 Certificate of patent or registration of utility model

Ref document number: 4361073

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120821

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120821

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130821

Year of fee payment: 4