[go: up one dir, main page]

JP2018118477A - 画像処理装置とその制御方法、及びプログラム - Google Patents

画像処理装置とその制御方法、及びプログラム Download PDF

Info

Publication number
JP2018118477A
JP2018118477A JP2017012540A JP2017012540A JP2018118477A JP 2018118477 A JP2018118477 A JP 2018118477A JP 2017012540 A JP2017012540 A JP 2017012540A JP 2017012540 A JP2017012540 A JP 2017012540A JP 2018118477 A JP2018118477 A JP 2018118477A
Authority
JP
Japan
Prior art keywords
unit
control unit
processing
image processing
image
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.)
Withdrawn
Application number
JP2017012540A
Other languages
English (en)
Other versions
JP2018118477A5 (ja
Inventor
康智 田中
Yasutomo Tanaka
康智 田中
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2017012540A priority Critical patent/JP2018118477A/ja
Priority to US15/876,260 priority patent/US20180213103A1/en
Publication of JP2018118477A publication Critical patent/JP2018118477A/ja
Publication of JP2018118477A5 publication Critical patent/JP2018118477A5/ja
Withdrawn legal-status Critical Current

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/00885Power supply means, e.g. arrangements for the control of power supply to the apparatus or components thereof
    • H04N1/00888Control thereof
    • H04N1/00891Switching on or off, e.g. for saving power when not in use
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • 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/00002Diagnosis, testing or measuring; Detecting, analysing or monitoring not otherwise provided for
    • H04N1/00026Methods therefor
    • H04N1/00034Measuring, i.e. determining a quantity by comparison with a standard
    • 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/00002Diagnosis, testing or measuring; Detecting, analysing or monitoring not otherwise provided for
    • H04N1/00071Diagnosis, testing or measuring; Detecting, analysing or monitoring not otherwise provided for characterised by the action taken
    • H04N1/00082Adjusting or controlling
    • 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/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00952Using a plurality of control devices, e.g. for different functions
    • 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
    • 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

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Facsimiles In General (AREA)
  • Control Or Security For Electrophotography (AREA)
  • Power Sources (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Electrophotography Configuration And Component (AREA)

Abstract

【課題】プロセス数のみで拡張部を通常状態に復帰させるか否かを判断すると、拡張部の消費電力を含めた全体の消費電力を低減させることは難しい。【解決手段】複数の処理部を有する第1の制御部と、前記複数の処理部と少なくとも一つと共通する処理を実行できる第1処理部を含む複数の処理部を有する第2制御部とを有する画像処理装置において、第1の制御部の前記複数の処理部の少なくとも一つを使用してジョブを実行する際、当該ジョブの実行に使用される処理部とメモリとの間のメモリ帯域性能を測定し、その測定されたメモリ帯域性能が所定値よりも大きい場合は、第1の制御部の複数の処理部の少なくとも一つにより実行される処理を第1処理部に代替させ、測定されたメモリ帯域性能が所定値以下の場合は第2の制御部への電源供給を停止させる。【選択図】 図12

Description

本発明は、画像処理装置とその制御方法、及びプログラムに関する。
スキャナ、プリンタ、コピー、ファクシミリの送受信などの機能を備えたデジタル複合機は、外部装置との間で画像データの入出力動作を制御する制御部と、画像データに対して所定の画像処理を行う複数の画像処理部とを有している。このようなデジタル複合機は様々な顧客に対応するため、低速機から高速機まで幅広く製造されており、それら様々な機器に対応する性能に柔軟に対応できるコントローラが望まれている。そこで、低速機用のコントローラを拡張することで高速機の処理速度に対応できるコントローラ・アーキテクチャがある。機能拡張の例として、例えば低速機用のコントローラに画像処理用のハードウェアを新たに追加することによりメモリ帯域性能を向上させ、より高速な画像処理に対応できるものがある。このような機能拡張が必要な理由として、近年のデジタル複合機ではメモリの集約化が進んでいることが挙げられる。複数の画像処理用のハードウェアが同一のメモリデバイスをワークエリアとして共有するため、そのメモリデバイスのメモリ帯域性能が高速処理のボトルネックになる。従って、高速機では機能拡張により、画像処理用のハードウェアを追加してメモリ帯域性能を向上させている。
一方、コントローラを含めたデジタル複合機の消費電力を可能な限り低減することが望まれている。上述した低速機用に用いられるメインのコントローラと高速機用の拡張部を備えた拡張コントローラでは、拡張部を利用しない場合は、その拡張コントローラを省電力状態にすることが望ましい。例えば特許文献1には、メイン側ノードと拡張側ノードにそれぞれCPUを設け、拡張側ノードが未使用のときに拡張側ノード全体を省電力状態とする。そしてメイン側ノードのCPUのプロセス数が増加した場合に拡張側ノードを省電力状態から復帰させることが記載されている。
特開2010−211358号公報
しかしながらCPUのプロセス数に応じて、拡張部を通常状態に復帰させるか否かを判断すると、必要最低限の省電力状態からの復帰とならない場合がある。例えば、メインコントローラのメモリ帯域性能が処理のボトルネックになる場合、例えプロセス数が多くても、必ずしも拡張部を省電力状態から復帰させる必要がない場合がある。なぜなら、メインコントローラによる処理で求められるメモリ帯域は、その処理の種類により異なるため、例えプロセス数が多くでも、必ずしもメモリ帯域性能がネックにならない場合があるためである。このように、メモリの帯域性能が処理のボトルネックになる場合でも、プロセス数のみで拡張部を通常状態に復帰させるか否かを判断すると、拡張部の消費電力を含めた全体の消費電力を低減させることは難しい。
本発明の目的は、上記従来技術の課題を解決することにある。
本発明の目的は、第1の制御部でのメモリ帯域性能に基づいて第2の制御部の処理部による処理の代替の制御、及び第2の制御部への電源供給を制御する技術を提供することにある。
上記目的を達成するために本発明の一態様に係る画像処理装置は以下のような構成を備える。即ち、
複数の処理部を有する第1の制御部と、
前記複数の処理部と少なくとも一つと共通する処理を実行できる第1処理部を含む複数の処理部を有する第2制御部と、
前記第1及び第2の制御部への電源供給を制御する電源供給手段と、
前記第1の制御部の前記複数の処理部の少なくとも一つを使用してジョブを実行する際、当該ジョブの実行に使用される処理部とメモリとの間のメモリ帯域性能を測定する測定手段と、
前記測定手段により測定された前記メモリ帯域性能が所定値よりも大きい場合は、前記第1の制御部の複数の処理部の少なくとも一つにより実行される処理を、前記第1処理部に代替させ、前記測定手段により測定された前記メモリ帯域性能が所定値以下の場合は、前記電源供給手段により前記第2の制御部への電源供給を停止させるように制御する制御手段と、を有することを特徴とする。
本発明によれば、第1の制御部でのメモリ帯域性能に基づいて第2の制御部の処理部による処理の代替制御、及び第2の制御部への電源供給の制御を行うことにより、装置全体の消費電力を、より低減させることができる。
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
添付図面は明細書に含まれ、その一部を構成し、本発明の実施形態を示し、その記述と共に本発明の原理を説明するために用いられる。
本発明の実施形態に係る画像処理装置の一例であるデジタル複合機の構成を説明するブロック図。 本実施形態に係るデジタル複合機のコントローラ部の構成を説明するブロック図。 本実施形態に係るシステム制御部の構成を説明するブロック図。 実施形態に係る複合機のリングバスを流れるパケットデータの構造を説明する図。 実施形態に係るプリント処理部の構成を説明するブロック図(A)、実施形態に係るループバック処理部の構成を説明するブロック図(B)、実施形態に係るスキャン処理部の構成を説明するブロック図(C)。 実施形態に係るループバック処理部のループパック画像処理部の構成を説明するブロック図。 実施形態に係る複合機のリングバススイッチの構成を説明するブロック図。 本実施形態に係る複合機のリングバススイッチによるリングバスの接続制御の一例を説明するブロック図で、拡張コントローラ部を使用しない場合の接続制御を示す。 実施形態に係るリングバススイッチ設定部の構成を説明するブロック図。 実施形態に係る複合機のメインコントローラ部と拡張コントローラ部とが接続されてリングバスを形成する場合の接続制御を説明する図。 実施形態に係る複合機のメインコントローラ部の帯域モニタの構成を説明するブロック図。 実施形態に係る複合機におけるメインコントローラ部と拡張コントローラ部による処理の制御を説明するフローチャート。
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
図1は、本発明の実施形態に係る画像処理装置の一例であるデジタル複合機100の構成を説明するブロック図である。
スキャナ部110は、原稿を光学的に読み取り、その原稿の画像に対応する画像データを出力する。スキャナ部110は、原稿を光学的に読み取るためのレーザ光源やレンズ等を有する原稿読取部112と、原稿を搬送するベルト等を有する原稿搬送部111とを備えている。プリンタ部140は、記録媒体(用紙)を搬送し、その用紙に画像データに基づく画像を印刷する。プリンタ部140は、用紙を給紙する給紙部142、画像データに基づいて画像を用紙に転写して定着させる転写定着部141、印刷された用紙をソート、ステイプルして機外へ搬出する排紙部143を有している。
コントローラ部120は、スキャナ部110、プリンタ部140と電気的に接続され、更にLAN,ISDN、インターネット/イントラネット等のネットワーク150と接続されている。ユーザがコピー機能を利用する場合、コントローラ部120は、スキャナ部110を制御して原稿の画像データを取得し、プリンタ部140を制御し、その原稿の画像を用紙に印刷して出力する。またスキャン機能を利用する場合、スキャナ部110を制御して原稿の画像データを取得してコードデータに変換し、ネットワーク150を介してホストPC(不図示)等へ送信する。またプリント機能を利用する場合、ホストPCからネットワーク150を介して受信した印刷データ(コードデータ)を画像データに変換し、プリンタ部140を制御して画像を用紙に印刷して出力する。またISDN等からデータを受信してプリントするファクシミリ(FAX)受信機能や、スキャナ部110から取得した画像データをISDN等へ送信するFAX送信機能も有する。また、これら各機能による処理の実行指示をジョブと呼び、デジタル複合機100は各機能に対応するジョブに従って所定の処理を実行する。操作部130は、ユーザが入力操作を行うためのユーザインタフェースとして機能しており、例えばタッチパネル機能を有する表示部や各種ボタンを含むキーボード等を備えている。
図2は、実施形態に係るデジタル複合機100のコントローラ部120の構成を説明するブロック図である。
コントローラ部120は、リングバス202を介して接続されたメインコントローラ部200と、機能拡張用の拡張コントローラ部201とを有する。更に、ROM290、RAM291a〜291c、HDD(ハードディスクドライブ)292、PHY(Physical Layer)293、電源供給部294を有している。以下、各部について詳しく説明する。尚、実施形態において、メインコントローラ部200及び拡張コントローラ部201はそれぞれ独立したプリント基板等の電子回路基板とする。また拡張コントローラ部201は、ユーザが機能を拡張できるよう着脱可能な構成とする。実施形態では、拡張コントローラ部201の構成をメインコントローラ部200と同一構成としている。但し、機能拡張モジュールとしては、リングバスに接続してパケットデータをやり取り可能なインタフェースを持つものであればどのような機能や構成でもよい。更に、例えば、メインコントローラ部200及び拡張コントローラ部201のそれぞれを、1チップ化したLSIとしてもよい。
まずメインコントローラ部200について説明する。メインコントローラ部200は、システム制御部210、リングバススイッチ220、プリント処理部230、ループバック処理部240、スキャン処理部250を有する。更に、RAMコントローラ260、リングバススイッチ設定部270、リングバス外部I/F280、帯域モニタ295を有している。
システム制御部210は、スキャナ部110におけるスキャン処理や、プリンタ部140におけるプリント処理を制御する制御モジュールである。システム制御部210は、リングバススイッチ220とリングバスで接続される。またスキャン処理やプリント処理で用いる画像データの転送制御を、リングバススイッチ220を介して行う。更に、システム制御部210は、ネットワーク150へのデータ送信やネットワーク150からのデータ受信、操作部130への表示処理などシステム全体を統括制御する。
リングバススイッチ220は、コントローラ部120内の各モジュールへ画像データを転送するためのリングバスのスイッチ制御を行う。実施形態では、コントローラ部120内の各モジュールへ画像データを転送するためのリングバスが、リングバススイッチ220を介してリング状に繋がっている。これによりシステム制御部210、プリント処理部230、ループバック処理部240、スキャン処理部250、リングバス外部I/F280の間で、画像データのやり取りが可能になっている。リングバススイッチ220の制御は、リングバススイッチ設定部270で行われ、必要に応じてリングバス上の各モジュールの接続先を変更することができる。スイッチ制御の詳細は後述する。
プリント処理部230は、プリンタ部140で使用する画像データのための色空間変換処理、中間調処理、ガンマ補正処理といったプリント用の画像処理を行う。プリント処理部230は、リングバススイッチ220を介して画像データを受け取り、その画像データに上記プリント用画像処理を施し、処理後の画像データをプリンタ部140へ出力する。
ループバック処理部240は、画像データの編集処理を行うブロックで、変倍処理、画像合成処理、回転処理など各種画像処理を実行できる。ループバック処理部240は、システム制御部210からリングバススイッチ220を介して画像データを受け取り、画像処理を施した後、システム制御部210へリングバススイッチ220を介して画像データを戻す。
スキャン処理部250は、スキャナ部110で取得した画像データに対し、シェーディング補正処理、MTF補正処理、ガンマ補正処理、フィルタ処理といったスキャナ用の画像処理を行う。スキャン処理部250は、スキャナ部110から転送されてきた画像データにスキャナ用の画像処理を施し、処理後の画像データをリングバススイッチ220へ転送する。リングバススイッチ220へ転送された画像データは、リングバスを介してシステム制御部210へ転送される。
RAMコントローラ260は、プリント処理部230、ループバック処理部240、スキャン処理部250から受け取った画像データをRAM291bへ書き込み、RAM291bへ書き込んだ画像データを読み出して転送する処理を行う。プリント処理部230、ループバック処理部240、スキャン処理部250は、それぞれが担当する画像処理を実行するためにRAM291bを一時的な画像バッファとして利用する。このときRAMコントローラ260とRAM291bとの間の転送路には、プリント処理部230、ループバック処理部240、スキャン処理部250それぞれの画像データが多重化して行き交う。そのため、この転送路の処理性能(メモリ帯域性能)を上回るデータ転送が要求されると転送待ち状態が発生する。よって、RAMコントローラ260とRAM291bとの間のデータ転送が、メインコントローラ部200の処理能力のボトルネックとなるケースが多々発生することになる。このメモリ帯域性能はメモリデバイス、メモリコントローラ及び動作周波数により決まるものであり、一般にMB(メガバイト)/s等、単位時間当たりのデータ転送量で表される。RAM291bの使用帯域がメモリデバイスや動作周波数で決まる上限値に達した場合、RAM291bを使用するいずれかの処理が待たされるか、或いは処理が遅くなる。この時、スキャン処理部230やプリント処理部250などのリアルタイム処理が遅くなってしまった場合、システムとして破綻してしまうため、どのような状況においてもリアルタイム処理についてはメモリ帯域の保証が必要となる。
バス帯域モニタ295は、メインコントローラ部200におけるRAM291bのメモリ帯域性能を測定する。帯域モニタ295は、メインコントローラ部200のプリント処理部230、ループバック処理部240、スキャン処理部250の各処理部とRAMコントローラ260との間に接続され、RAM291bの使用帯域性能をモニタする。帯域モニタ295の詳細については図11を参照して後述する。
リングバス外部I/F280は、リングバススイッチ220を介してメインコントローラ部200と外部とを接続し、外部との間でパケットデータの入出力を行う。このリングバス外部I/F280を介して、メインコントローラ部200と拡張コントローラ部201との間でデータ転送が行われる。つまり実施形態では、拡張コントローラ部201がリングバス外部I/F280を介してメインコントローラ部200と接続され、1個のリングバス202を形成している。
次に、拡張コントローラ部201について説明する。この拡張コントローラ部201は、コントローラ部120の処理を高速化するための機能拡張モジュールである。実施形態では、拡張コントローラ部201は、デジタル複合機100のメモリ帯域性能を増加させる目的で使用される。上述したようにメインコントローラ部200のRAM291bのメモリ帯域性能は、使用するメモリデバイス及び、動作周波数により決定されるため限界がある。高速機においては、中低速機に比べ高速に画像処理を行う必要があるため、メインコントローラ部200と拡張コントローラ部201の2つを使用することにより、画像処理システムとしてのメモリ帯域性能を向上させることができる。
実施形態では、拡張コントローラ部201の構成とメインコントローラ部200の構成が同一である。即ち、拡張コントローラ部201は、システム制御部211、リングバススイッチ221、プリント処理部231、ループバック処理部241、スキャン処理部251を有している。更に、拡張コントローラ部201は、RAMコントローラ261、リングバススイッチ設定部271、リングバス外部I/F281を有している。これら各部の機能は、メインコントローラ部200内の対応する各部の機能と同じである。このような構成を採用することで、メインコントローラ部200とは別に拡張コントローラ部201を設計する開発コストを抑えることができる。尚、実施形態では、拡張コントローラ部201のプリント処理部231、ループバック処理部241、スキャン処理部251の内、実際に拡張機能として使用されるのはループバック処理部241である。これはプリント処理部231やスキャン処理部251を使用すると、プリンタ部140、スキャナ部110の接続をメインコントローラ部200から拡張コントローラ部201へ変更する必要が発生し、コントローラ部120の構成が複雑化するためである。図2において、拡張コントローラ部201のシステム制御部211、プリント処理部231、スキャン処理部251はグレーアウトし、動作させる必要のないことを示している。図2においてグレーアウトされた部分は、クロック信号の供給が停止された省電力状態としてもよい。
電源供給部294は、メインコントローラ部200と拡張コントローラ部201への電源供給を制御する。複合機100の電源がオンされると、電源供給部294はコントローラ部120内部でメインコントローラ部200のみに電源供給を開始する。拡張コントローラ部201への電源供給は、メインコントローラ部200のシステム制御部210からの指示に従って制御される。よって、システム制御部210からの電源供給の指示があった場合にのみ拡張コントローラ部201へ電源供給を行い、電源供給の停止指示があった場合には電源供給を停止させる。
図3は、実施形態に係るシステム制御部210の構成を説明するブロック図である。以下、システム制御部210を構成する各要素について説明する。尚、拡張コントローラ部201のシステム制御部211も同様の構成である。
CPU310は、複合機100全体を制御するプロセッサである。CPU310は、RAM291aに展開されたOS(オペレーティングシステム)や制御プログラムに従って、プリント処理やスキャン処理といったジョブ処理を統括的に制御する。ROMコントローラ320は、ブートプラグラムを格納しているROM290にアクセスするための制御モジュールである。デジタル複合機100の電源がオンされるとCPU310は、ROMコントローラ320を介してROM290にアクセスしてブートプログラムを実行し、HDD292からRAM291aにプログラムを展開する。RAMコントローラ330は、制御プログラムや画像データを格納するRAM291aにアクセスするための制御モジュールである。RAMコントローラ330は、RAM291aの設定や制御を行うためのレジスタを備えており、このレジスタは、CPU310からアクセス可能である。操作部インタフェース340は、ユーザによる操作部130を介した操作指示の受付、及び操作結果の表示等を制御する。HDD292は、システムソフトウェアやアプリケーションプログラム、画像データと各画像データに対応するページ情報やジョブ情報を格納する。HDD292は、HDDコントローラ360を介してシステムバス300に接続されており、CPU310の指示に従ってデータの書き込みや読み出しを行う。LANコントローラ370はPHY293を介してネットワーク150に接続し、外部のホストコンピュータとの間で画像データなどの情報の入出力を行う。モデム372は図示しない公衆回線に接続され、FAX送信やFAX受信ジョブを処理する際に外部のFAX機器とデータ通信を行う。
画像圧縮部350は、RAM291a又はHDD292に格納される画像データを、例えばJPEGフォーマットに圧縮処理する。また画像伸張部351は、例えばJPEGフォーマットに圧縮された画像データを伸張する。レンダリング部352は、ネットワーク150からLANコントローラ370を経由して受信した画像データ(PDLデータ)を、プリンタ部140で取り扱い可能なビットマップデータに変換する。
電源制御部380は、メインコントローラ部200の各ブロックに対して、未使用ブロックへのクロック供給を止めるなどの省電力制御を行う。例えば、省電力では、拡張コントローラ201のシステム制御部211の電源制御部は、システム制御部211やプリント処理部231、スキャン処理部251といった未使用ブロックへのクロック信号の供給を停止している。
GPIO制御部390は、コントローラ部120に備えられているGPIO(汎用IOポート)を制御するブロックである。このブロックはCPU310によって制御され、GPIOの状態を制御する。本実施形態では、GPIO制御部390から出力されるGPIO信号はシステム制御部210の外部へ出力され、コントローラ部120の電源供給部294へ接続されている。電源供給部294は、このGPIO信号がロウレベルの状態のとき拡張コントローラ201への電源供給を停止し、ハイレベルのときに拡張コントローラ201へ電源を供給する。これによりCPU310は、拡張コントローラ201への電源供給を制御することができる。尚、このGPIO信号の初期状態はロウレベルである。
リングバスインタフェース301は、システム制御部210のシステムバス300と、システム制御部210外のリングバススイッチ220を中心としたリングバスとを接続するインタフェースである。リングバスを流れるデータをパケットデータと呼び、リングバスインタフェース301は、RAM291a又はHDD292に格納されたパケットデータをリングバスへ送信する。また、リングバスから受信したパケットデータをRAM291a又はHDD292に格納する。
次にパケットデータについて説明する。
図4は、実施形態に係る複合機100のリングバスを流れるパケットデータの構造を説明する図である。
パケットデータ400は、ヘッダ部410とデータ部420とを含んでいる。ヘッダ部410は更に、パケットタイプ411、チップID412、ページID413、ジョブID414、パケットY座標、パケットX座標、パケットバイト長、データバイト長418を含んでいる。
パケットタイプ411は、そのパケットが画像データか、コマンドなのかを示す。パケットタイプ411が画像データを示す場合には、データ部420には画像データが格納されている。一方、パケットタイプ411がコマンドを示す場合は、データ部420には各画像処理部の係数やモードなどを設定するための設定アドレスと設定値が格納されている。チップID412は、このパケットを送信するターゲットとなる処理部を識別するためのID(識別子)である。例えば、ID「0」はプリント処理部230、ID「1」はループバック処理部240、ID「2」はスキャン処理部250、ID「3」は拡張コントローラ201内のループバック処理部241等である。ページID413は、このパケットが属するページ番号を示す。スキャンやプリントといった処理は複数ページ実施される場合があり、その場合に、何ページ目に属するパケットかを示す。ジョブID414は、このパケットの属するジョブ番号を示している。例えば、スキャンジョブとプリントジョブが同時に実施される場合は、スキャンジョブのパケットには「ジョブ番号1」、プリントジョブのパケットには「ジョブ番号2」というように、ジョブ番号が付与され、これにより各ジョブを識別することできる。パケットY座標415は、データ部420に画像データが格納されている場合、その画像データがページ内のどのY座標に位置するかを示す。またパケットX座標416は、データ部420に画像データが格納されている場合、その画像データがページ内のどのX座標に位置するかを示す。データ部420に格納される画像データは、ページ単位の画像データを、所定の画素数(例えば、32画素×32画素)の矩形サイズに分割したものである。よって、パケットデータからページデータを再生成する場合に、これらX,Y座標が参照される。尚、この画像データは画像圧縮部350又は各画像処理部の内部に実装されている圧縮器によって圧縮されており、圧縮画像データとしてデータ部420に格納されている。パケットバイト長417は、このパケットのトータルバイト数を示し、データバイト長418はデータ部420のトータルバイト数を示す。
以上説明したようなパケットデータがリングバス上を流れる。各画像処理部はパケットデータを受信、解釈し、コマンドを示すパケットであれば処理のモードや係数などを設定し、画像データを示すパケットであれば画像データに画像処理を実施する。
次に、実施形態に係るプリント処理部230、ループバック処理部240、スキャン処理部250について、図5を参照して詳しく説明する。
図5(A)は、実施形態に係るプリント処理部230の構成を説明するブロック図である。
リングバスインタフェース(I/F)500は、プリント処理部230内の各部と、プリント処理部230の外のリングバススイッチ220を中心としたリングバスとを接続するインタフェースである。リングバスインタフェース500は、パケット入力部501とパケット出力部502とを有している。パケットデータを受信すると、パケット入力部501はヘッダ部410のチップID412を参照し、パケット入力部501に割り振られたチップIDと同一かどうかをチェックする。チップID412の示すIDが、そのパケット入力部501に割り振られたチップIDと異なる場合、処理すべきパケットデータではないと判断して、そのパケットデータをパケット出力部502に転送する。
一方、チップID412の示すIDが、そのパケット入力部501に割り振られたチップIDと同一である場合、そのパケットが画像データであれば内部の画像処理パス(伸張器503〜プリンタ画像処理部505)を通して画像処理を実行する。またそのパケットがコマンドであれば、データ部420に格納されている設定アドレスと設定値とを参照し、指定された画像処理部の係数やモードを設定保持部506に設定する。またそのパケットが設定値をリードするコマンドであれば、設定保持部506は、設定値を格納したパケットデータをリングバスインタフェース500に送る。伸張器503、パケットラスタ変換部504及びプリンタ画像処理部505は、設定保持部506に保持された設定値に基づいて処理を行う。
パケット出力部502は、パケット入力部501から転送されるパケットデータ、及び設定保持部506からのパケットデータの調停を行って、リングバスにパケットデータを転送する。伸張器503は、リングバスインタフェース500から受け取った圧縮画像データを伸張し、後段の画像処理を実施可能な状態に復元する。パケットラスタ変換部504は、伸張器503から、伸張された画像データを受け取り、ラスタ画像データに変換する。前述したようにパケット内の画像データは、32画素×32画素の矩形単位のデータである。電子写真方式の画像形成装置であれば、プリンタ部140での印刷処理はラスタ順(ライン順)で行われるため、このパケットラスタ変換部504で画像データの画素の並びをラスタ順に変換している。また実施形態では、画像データを32画素×32画素の矩形からラスタ順に変換するための一時バッファとしてRAM291bを使用しており、パケットラスタ変換部504は、RAMコントローラ260を介してRAM291bにアクセスする。
プリンタ画像処理部505は、上述のようにしてラスタ順に変換された画像データをパケットラスタ変換部504から受け取り、プリンタ部140による印刷の前処理としての画像処理を画像データに対して行う。具体的には、RGBをCMYKに変換する色空間変換処理、ディザ法や誤差拡散法による中間調処理、プリンタ部140の特性に合わせ階調を補正するガンマ補正処理などを行う。こうして画像処理が施された画像データはプリンタ部140へ出力される。またプリンタ画像処理部505は、プリンタ部140の起動及び給紙部142からの給紙に合わせて、プリンタ部140へ画像データを出力する必要がある。そのため、そのタイミングまでの待ち合わせ用のバッファとしてRAMコントローラ260を介して、RAM291bへ画像データを一時的に書き込む。そして、給紙タイミングに同期させてRAM291bから画像データを読み込んでプリンタ部140へ出力する。
図5(B)は、実施形態に係るループバック処理部240の構成を説明するブロック図である。
リングバスインタフェース(I/F)510は、ループバック処理部240の各部と、ループバック処理部240外のリングバススイッチ220を中心としたリングバスとを接続するインタフェースである。リングバスインタフェース510は、パケット入力部511とパケット出力部512とを有している。パケットデータを受信すると、パケット入力部511はヘッダ部410のチップID412を参照し、パケット入力部511に割り振られたチップIDと同一かどうかをチェックする。チップID412の示すIDがパケット入力部511に割り振られたチップIDと異なる場合、パケット入力部511で処理すべきパケットデータではないと判断して、そのパケットデータをパケット出力部512に転送する。一方、チップID412の示すIDが、パケット出力部512に割り振られたチップIDと同一の場合、そのパケットが画像データであれば内部の画像処理パス(伸張器513、ループバック画像処理部514)を通して画像処理を実行する。そしてリングバスインタフェース510は、画像処理後の圧縮画像データを圧縮器515から受け取ると、その画像データにヘッダを付与し、パケットデータとして整形し、システム制御部210へ送信する。そのパケットがコマンドであれば、データ部420に格納されている設定アドレスと設定値とを参照し、指定された画像処理部の係数やモードを設定保持部516に設定する。そのパケットが設定値をリードするコマンドであれば、設定保持部516は、保持している設定値を格納したパケットデータを作成してリングバスインタフェース510に送る。伸張器513、ループバック画像処理部514、圧縮器515は設定保持部516に保持された設定値に基づいて処理を行う。
パケット出力部512は、パケット入力部511から転送されるパケットデータ、圧縮器515からのパケットデータ、及び設定保持部516からのパケットデータの調停を行い、リングバスにパケットデータを転送する。
伸張器513は、リングバスインタフェース510から入力された圧縮画像データを伸張し、後段の画像処理を実施可能な画素状態に復元する。圧縮器515は、ループバック画像処理部514から入力された処理済みの画像データを圧縮してリングバスインタフェース510へ出力する。尚、この圧縮処理は、リングバスインタフェース510でパケットデータを整形するために行われる。ループバック画像処理部514は、伸張器513で伸張された画像データを受け取り、前述した編集系の画像処理を行う。この機能はプリント処理とスキャン処理のどちらでも利用することが可能であり、拡張コントローラ部201でも同様の機能が使用される。
図6は、実施形態に係るループバック処理部240のループパック画像処理部514の構成を説明するブロック図である。
セレクタ600は、伸張器513から入力される画像データ、或いは圧縮器515に出力する画像データを、内部のどの画像処理部に接続するかを選択する。このセレクタ600は、画像データが送信されてくる前に、CPU310がコマンドパケットによって、その切り替えを設定しており、画像データが入出力されるときには、その接続先が決定されている。
回転処理部610は、画像データを回転する処理を実施する。例えば、A4縦でスキャンされた画像を、A4横にして電子化するために使用し、またA4横の画像をプリントする場合に、給紙部142にセットされている記録紙がA4横でなくA4縦であった場合に画像を回転させるために使用される。2値化処理部611は、入力された多値(例えばRGBそれぞれ8ビット諧調)を誤差拡散法などで2値化する処理を実施する。これは例えば、スキャンした画像をFAX送信する場合、2値化のために使用される。色空間変換部612は、RGB画像をYUV画像に変換する処理、及びYUV画像をRGB画像に変換する処理を実施する。解像度変換部613は、入力された画像データの解像度を変換する処理を実施する。例えばFAX送信であれば、スキャンされた高解像度の画像データをFAX送信で使用する低解像度に変換するために使用する。またFAX受信プリントであれば、受信した低解像度の画像データをプリント用に高解像度にするために使用される。画像合成部614は、印刷すべき画像データにページ印刷(ナンバリング)や部数印刷、地紋といった合成データを合成する処理を実施する。画像形成装置を使用するユーザによっては、セキュリティに関わる地紋印刷といった合成処理を常に使用することがあり、合成処理を常に使用したとしても性能が低下しないことが望まれる。
インターコネクト620は、2値化処理部611、解像度変換部613、画像合成部614と、RAMコントローラ260とを接続するインターコネクトである。2値化処理部611と解像度変換部613は、32画素×32画素の矩形のままで画像処理することが困難であり、一度RAM291aを使用して画像データをラスタ順に変換してから画像処理を実施している。2値化処理部611は、誤差拡散法を順次画素に適用していくためにラスタ順に画素が入力されることが望ましい。また解像度変換部613も、例えばバイキュービック法で変換する場合にフィルタ処理を行う必要があるため、一度ラスタ順に変換し、内部のラインバッファで画素を蓄積し、フィルタ処理を行うことが望ましい。また画像合成部614は、パケットとして送信されてくる合成データと、同じくパケットとして送信されてくる画像データとを待ち合わせるための一時バッファとしてRAM291bを利用している。
以上説明したようにループバック画像処理部514は様々なジョブで利用される。しかしながら、ループバック画像処理部514は、RAM291aにスプールされた画像データを処理してRAM291aに書き戻す処理を行う。このため、プリント処理部230、スキャン処理部250の処理に比べて、リアルタイム性を求められていないという特徴がある。
図5(C)は、実施形態に係るスキャン処理部250の構成を説明するブロック図である。
リングバスインタフェース520は、スキャン処理部250内の各部と、スキャン処理部250外のリングバススイッチ220を中心としたリングバスとを接続するインタフェースである。リングバスインタフェース520は、パケット入力部521とパケット出力部522とを有している。パケットデータを受信すると、パケット入力部521はヘッダ部410のチップID412を参照し、自身に割り振られたチップIDと同一かどうかをチェックする。チップID412の示すIDが自身に割り振られたチップIDと異なる場合、自身で処理すべきパケットデータではないと判断して、パケット出力部522に、そのパケットデータを転送する。一方、チップID412の示すIDが自身に割り振られたチップIDと同一である場合、パケットがコマンドであれば、データ部420に格納されている設定アドレスと設定値を参照し、指定された画像処理部の係数やモードを設定保持部526に設定する。このとき、スキャン処理部250に対して画像データはスキャナ部110からのみ入力されるため、受信したパケットが画像データを示すことなない。また、パケットが設定値をリードするコマンドであれば、設定保持部526は、設定値を格納したパケットデータをリングバスインタフェース520に送る。スキャン画像処理部523、ラスタパケット変換部524、圧縮器525は、設定保持部526に保持された設定値を基に処理を行う。パケット出力部522は、パケット入力部521から転送されるパケットデータ、及び設定保持部526からのパケットデータの調停を行い、リングバスにパケットデータを転送する。
圧縮器525は、ラスタパケット変換部524から入力された画像データを圧縮し、後段のリングバスインタフェース520へ出力する。圧縮処理はリングバスインタフェース520でパケットデータを整形するために行われる。ラスタパケット変換部524は、スキャン画像処理部523から入力された画素データを、32画素×32画素の矩形の画像データに変換する。前述したようにパケット内の画像データは32画素×32画素の矩形単位であるため後段のパケット送信のために矩形に変換している。
スキャナ部110内でのスキャン処理はライン型のイメージセンサを用いてラスタ順(ライン順)で行われるため、このラスタパケット変換部524で画像データの画素の並びを矩形に変換している。また、実施形態では画像データをラスタ順から32画素×32画素の矩形に変換するための一時バッファとしてRAM291bを使用しており、ラスタパケット変換部524はRAMコントローラ260を介してRAM291bにアクセスする。
スキャン画像処理部523は、スキャナ部110から画像データを受け取り、シェーディング補正、MTF補正、入力ガンマ補正、フィルタリングといった画像処理を行う。これらの画像処理が施された画像データは、ラスタパケット変換部524へ出力される。また、スキャン画像処理部523は、スキャナ部110でのスキャン動作を停止させないために、入力される画像データの転送速度に間に合うように画像データを受信する必要がある。一方で、リングバスインタフェース520によるパケット送信は、各画像処理部のパケット送信と自身のパケット送信のタイミングが重なった場合、送信を待たされることがあり、送信速度は安定しない。そのため、スキャン画像処理部523は、送信タイミングまでの一時的な干渉用の画像バッファとして、RAMコントローラ260を介してRAM291bへ画像データを一時的に書き込む。そして、パケット送信のタイミングに同期させRAM291bから画像データを読み込み、ラスタパケット変換部524へ画像データを送信する。
図7は、実施形態に係る複合機100のメインコントローラ部200のリングバススイッチ220の構成を説明するブロック図である。尚、拡張コントローラ部201のリングバススイッチ221の構成もこれと同様である。
リングバススイッチ220は、リングバスにおいてデータの転送先となり得る各モジュールの合計数と同じ数だけ、その内部にスイッチを有する。実施形態では、システム制御部210、プリント処理部230、ループバック処理部240、スキャン処理部250及びリングバス外部I/F280の各モジュールに対応する5つのスイッチ701〜705を有している。これらスイッチ(SW)701〜705のそれぞれは、リングバススイッチ設定部270によって設定された値(設定値)に従って、リングバスを介した接続先を切り替えることができる。これにより、システム制御部210、プリント処理部230、ループバック処理部240、スキャン処理部250、リングバス外部I/F280の、それぞれのリングバス上での接続順を自由に変更することができる。
図8は、本実施形態に係る複合機100のリングバススイッチ220(或いは221)によるリングバスの接続制御の一例を説明するブロック図である。特に図8はメインコントローラ部200内でリングバスが完結する場合、つまり拡張コントローラ部201を使用しない場合の接続制御を示している。そ
また図9は、リングバススイッチ設定部270の構成を説明するブロック図である。
リングバススイッチ設定部270は、スイッチ701〜705を制御するためのレジスタ(制御用レジスタ)910〜950を有している。そして、実施形態に係る各制御用レジスタ910,920,930,940,950は、いずれも4ビットのレジスタで構成され、例えば、ビット0(bit0)に「1」をセットした場合、「入力(1)」がそのスイッチにおける出力(Y)と接続される。同様に、ビット1に「1」をセットすると、「入力2(2)」が、ビット2に「1」をセットすると「入力3(3)」が、ビット3に「1」をセットすると「入力4(4)」がそれぞれ、そのスイッチの出力(Y)と接続される。このように、各制御用レジスタに格納された値に従って、各スイッチにおける入力データの転送先となるモジュールが特定される。リングバス上の図8に示す接続制御を行う場合の設定値(各制御用レジスタの値)は以下の通りである。
スイッチ701制御用レジスタ(910)の値…1000(入力4を選択)
スイッチ702制御用レジスタ(920)の値…1000(入力4を選択)
スイッチ703制御用レジスタ(930)の値…0010(入力2を選択)
スイッチ704制御用レジスタ(940)の値…0010(入力2を選択)
スイッチ705制御用レジスタ(950)の値…0000(入力の選択なし)
つまり、図8のように接続する場合、スイッチ701は、設定値「1000」に従って「入力4」に対応するスキャン処理部250からのパケットデータをシステム制御部210へ出力する。スイッチ702は設定値「1000」に従って、「入力4」に対応するシステム制御部210からのパケットデータをプリント処理部230へ出力する。またスイッチ703は設定値「0010」に従って、「入力2」に対応するプリント処理部230からのパケットデータをループバック処理部240へ出力する。更にスイッチ704は設定値「0010」に従って、「入力2」に対応するループバック処理部240からのパケットデータをスキャン処理部250へ出力する。そしてスイッチ705は、設定値「0000」に従って何も出力もしない(リングバス外部I/F280が不使用となる)。
このようにリングバススイッチ220を制御することで、システム制御部210を起点としてパケットデータは、プリント処理部230、ループバック処理部240、スキャン処理部250へと順次回り、システム制御部210へと戻る。これにより、メインコントローラ部200単体での構成、つまり拡張コントローラ部201を使用しない構成となる。
図10は、実施形態に係る複合機100のメインコントローラ部200と拡張コントローラ部201とが接続されてリングバスを形成する場合の接続制御を説明する図である。ここで、図10に示す接続制御を行う場合の設定値(各制御用レジスタの値)は以下の通りである。
スイッチ701制御用レジスタ(910)の値…1000(入力4を選択)
スイッチ702制御用レジスタ(920)の値…1000(入力4を選択)
スイッチ703制御用レジスタ(930)の値…0000(入力の選択なし)
スイッチ704制御用レジスタ(940)の値…0001(入力1を選択)
スイッチ705制御用レジスタ(950)の値…0010(入力2を選択)
スイッチ711制御用レジスタの値…0000(入力の選択なし)
スイッチ712制御用レジスタの値…0000(入力の選択なし)
スイッチ713制御用レジスタの値…0001(入力1を選択)
スイッチ714制御用レジスタの値…0000(入力の選択なし)
スイッチ715制御用レジスタの値…0100(入力3を選択)
つまり、図10に示すように接続する場合、スイッチ701は設定値「1000」に従って、「入力4」に対応するスキャン処理部250からのパケットデータをシステム制御部210へ出力する。スイッチ702は設定値「1000」に従って、「入力4」に対応するシステム制御部210からのパケットデータをプリント処理部230へ出力する。スイッチ703は設定値「0000」に従って何も出力もしない(ループバック処理部240が不使用となる)。スイッチ704は設定値「0001」に従って、「入力1」に対応するリングバス外部I/F280からのパケットデータをスキャン処理部250へ出力する。スイッチ705は設定値「0010」に従って、「入力2」に対応するプリント処理部230からのパケットデータをリングバス外部I/F280へ出力する。
このようにリングバススイッチ220を制御することで、システム制御部210を起点としてパケットデータは、プリント処理部230、リングバス外部I/F280、スキャン処理部250へと順次回り、システム制御部210へと戻る。
また拡張コントローラ部201のリングバススイッチ221では、スイッチ711,712及び714は設定値「0000」に従って何も出力もしない(システム制御部211、プリント処理部231、スキャン処理部251が不使用となる)。スイッチ713は設定値「0001」に従って、「入力1」に対応するリングバス外部I/F281からのパケットデータをループバック処理部241へ出力する。スイッチ715は設定値「0100」に従って、「入力3」に対応するループバック処理部241からのパケットデータをリングバス外部I/F281へ出力する。
このようにリングバススイッチ221を制御することで、拡張コントローラ部201へ入力されたパケットデータは、ループバック処理部241を経由してメインコントローラ部200へ戻る。即ち、システム制御部210を起点としてパケットデータが、プリント処理部230、ループバック処理部241、スキャン処理部250へと順次経由してシステム制御部210へ戻るリングバスを形成することが可能となる。
以上のようにリングバスを形成することにより、メインコントローラ部200のループバック処理部240を使用しないことにより、RAM291bへのデータ転送路の混雑が緩和され、メインコントローラ部200の性能低下を防ぐことが可能となる。
尚、実施形態においては、メインコントローラ部200及び拡張コントローラ部201の外部から、これらレジスタの値を設定/変更できるようにしても良い。例えば、上述のリングバススイッチ制御用レジスタの値を編集可能なソフトウェアを用いて、ユーザが操作部130を介して新たな値を設定できるような構成でもよい。その場合、そのソフトウェアは、システム制御部210のCPU310が実行し、拡張コントローラ部201のシステム制御部211は使用しない。そのため、拡張コントローラ部201のリングバススイッチ設定部271における制御用レジスタ値の変更についても、メインコントローラ部200のシステム制御部210が、リングバス外部I/F280及び281を介して行なうことになる。
尚、実施形態では、拡張コントローラ部201の構成はメインコントローラ部200と同じ構成としているが、一部が異なる構成でも構わない。また実施形態では、メインコントローラ部200と拡張コントローラ部201とにそれぞれリングバススイッチ設定部270,271を備える構成としたが、本発明はこれに限定されない。例えば、共通する1個のリングバススイッチ設定部によって、リングバススイッチ220,221双方のスイッチ制御を行う構成であっても構わない。
図11は、実施形態に係る複合機100のメインコントローラ部200の帯域モニタ295の構成を説明するブロック図である。
帯域モニタ295は、帯域検出部1101、帯域通知部1102、帯域閾値設定部1103、及び割り込み通知部1104を有している。帯域モニタ295は、メインコントローラ部200のRAM291bのメモリ帯域を測定するために用いられる。即ち、メインコントローラ部200のプリント処理部230、ループバック処理部240、スキャン処理部250の各処理部と、RAMコントローラ260との間のデータ転送を帯域検出部1101によりモニタする。そして、RAM291bの、その時点でのメモリ帯域を算出する。こうして帯域検出部1101により取得されたメインコントローラ部200のRAM291bのメモリ帯域は、帯域通知部1102を通してCPU310により読み取り可能である。
帯域閾値設定部1103は、CPU310により帯域の閾値(所定値)が設定される。帯域閾値設定部1103に設定された閾値は、帯域検出部1101により計測されたRAM291bの、その時点でのメモリ帯域との比較に用いられる。そのときのメモリ帯域が、帯域閾値設定部1103に設定された閾値よりも大きい場合、割り込み通知部1104を通してCPU310に通知することも可能である。実際の使用例として、帯域閾値設定部1103には、先述したようなメモリデバイスや動作周波数で決まるRAM291bのメモリ帯域性能の上限値、或いは上限値に近い値を設定する。そして、プリント処理部230、ループバック処理部240及びスキャン処理部250を使用する時に、帯域検出部1101が示す、RAM291bのメモリ帯域との比較に用いられる。帯域検出部1101が示すRAM291bの使用メモリ帯域が、帯域閾値設定部1103に設定した閾値より大きい場合、メインコントローラ部200のRAM291bが混雑していると判断し、拡張コントローラ部201へ電源供給を開始する。そして、リアルタイム性が要求されていないループバック処理部240を使用する画像処理を、拡張コントローラ部201のループバック処理部241へ割り当てる。これにより、メインコントローラ部201のRAM291bの混雑を少なくし、リアルタイム処理が待たされたり、或いは遅延するのを防止できる。もちろん、各画像処理を行う時に、帯域検出部1101が示すRAM291bの使用メモリ帯域と、これから実行する画像処理で使用するメモリ帯域の予想値との合計値を、帯域閾値設定部1103に設定した閾値との比較に用いてもよい。こうすることにより、これから実行する画像処理を行った場合に、RAM291bのメモリ帯域が、RAM291bのメモリ帯域性能の上限値に達してしまうかどうかを事前に判断できる。
一方、帯域検出部1101が示すRAM291bの使用メモリ帯域が、帯域閾値設定部1103に設定した閾値以下(所定値以下)の場合、RAM291bの帯域は混雑していないと判断し、これから実行する処理をメインコントローラ部201に割り当てる。これにより、RAM291bのメモリ帯域に鑑み、メモリ帯域性能に影響がある場合のみ、拡張コントローラ部201を使用することが可能となる。
このように、帯域モニタ295により、CPU310は、RAM291bのメモリ帯域を知ることができ、それを拡張コントローラ部201を使用するか否かの判定に用いることができる。
図12は、実施形態に係る複合機100におけるメインコントローラ部200と拡張コントローラ部201による処理の制御を説明するフローチャートである。尚、このフローチャートで示す処理は、CPU310がHDD292に格納されたプログラムをRAM291aに展開し、CPU310が、その展開したプログラムを実行することにより達成される。
まずS1201でCPU310は、ジョブを受付けたかどうか判定する。ここでは例えば、ユーザからスキャンジョブやFAX送信ジョブを受付ける場合は、ユーザが操作部130を操作したことを操作部インタフェース340を介してCPU310が検知し、その操作内容に従ってジョブの入力を受け付ける。また、PC等からのプリントジョブの受信の場合は、ネットワーク150及びLANコントローラ370経由でCPU310はホストコンピュータからのジョブの入力を受け付ける。またFAX受信ジョブであれば、公衆回線及びモデム372を介してCPU310はジョブの入力を受け付ける。こうしてジョブを受け付けるとS1202へ進む。S1202でCPU310は、S1201で受け付けたジョブにより使用される画像処理機能を判定してS1203に進む。具体的には、プリント処理部230、ループバック処理部240、スキャン処理部250のどの処理が、受け付けたジョブによって使用されるかを判定する。
例えば、ジョブとしてFAX送信ジョブを受け付けた場合、FAX送信のためにスキャナ部110を用いたスキャン処理を実行するためスキャン処理部250が使用される。またスキャンした画像データに対してFAX送信可能なフォーマットに変換するためにループバック処理部240が使用される。具体的には、2値化処理部711による送信画像の2値化処理、及び解像度変換部713によるFAX送信可能な解像度の画像データへの変換処理が実行される。つまり、スキャン処理部250とループバック処理部240の2つの画像処理部が使用されると判定する。
また、ホストコンピュータからプリントジョブを受け付けた場合、プリンタ部140を用いたプリント処理を実行するためプリント処理部230が使用される。また例えば、ホストコンピュータから送付されてきたプリントすべき画像データと、給紙部142にセットされている記録紙の向きが異なる場合は、ループバック処理部240の回転処理部710を使用して画像データの向きを回転させる。また例えば、地紋などのデータを画像データに合成する指示があった場合は、ループバック処理部240の画像合成部714を使用して、画像データに地紋データを合成する。この場合は、プリント処理部230とループバック処理部240の2つの画像処理部が使用される。
デジタル複合機100は一般的に、複数のジョブを同時に受け付けることができ、ジョブが重なる状態をジョブ競合状態と呼ぶ。ジョブ競合状態は、例えばデジタル複合機100がプリントジョブとFAX送信ジョブとをほぼ同時に受け付けた場合などに発生し、複数のジョブが競合した場合に、前述したRAM291bへのデータ転送路が混雑することとなる。
S1203でCPU310は、S1202で判定した画像処理を実行する前に、帯域モニタ295が示すRAM291bの現在のメモリ帯域を確認する。ここで、この帯域モニタ295が示すRAM291bの帯域が、閾値より小さければ、RAM291bは混雑していないと判定してS1204へ進み、閾値以上であればRAM291bは混雑していると判定してS1205へ進む。ここで言う閾値は、帯域モニタの説明で前述したように、メモリデバイスや動作周波数で決まるRAM291bのメモリ帯域性能の上限値、或いは上限値に近い値である。もちろん、各画像処理を行う時に、帯域モニタ295が示すRAM291bの現在のメモリ帯域と、これから実行する画像処理で使用するメモリ帯域の予想値との合計値を、閾値との比較に用いてもよい。こうすることにより、これから実行する画像処理を行った場合に、RAM291bのメモリ帯域が、RAM291bのメモリ帯域性能の上限値に達してしまうかどうかを事前に判定できる。
S1204でCPU310は、リングバススイッチ220を、メインコントローラ部200でリングバスが完結する状態に設定してS1209に進む。このS1204は、CPU310が、メインコントローラ部200のRAM291bへのデータ転送路が混雑していないと判定した場合に実施されるため、図8で示したように拡張コントローラ部201を使用しないようリングバススイッチ220を設定する。
一方、S1205でCPU310は、拡張コントローラ部201への電源供給を開始する。具体的にはCPU310は、GPIO制御部390を制御してGPIO信号をハイレベルにする。これによりコントローラ部120の電源供給部294は、拡張コントローラ部201への電源供給を開始する。
次にS1206に進みCPU310は、リングバス外部I/F280を介してメインコントローラ部200と拡張コントローラ部201との間でパケットデータを送受信可能となるようにリングバススイッチ220及び221を設定する。具体的な設定は、例えば図10で示したものとなる。このS1206は、メインコントローラ部200のRAM291bへのデータ転送路が混雑していると判定された場合に実施されるため、図10で示したように拡張コントローラ部201を使用できるようリングバススイッチ220及び221を設定する。次にS1207に進みCPU310は、拡張コントローラ部201の初期設定を実行する。この初期設定は、ループバック処理部241及びRAMコントローラ261の設定である。本実施形態では、CPU310はパケットデータを拡張コントローラ部201へ送信することで拡張コントローラ部201の各種設定を行う。次にS1208に進みCPU310は、ループバック画像処理を拡張コントローラ部201のループバック処理部241に割り当ててS1209に進む。S1208では、メインコントローラ部200のRAM291bへのデータ転送路が混雑していると判定されているため、更に画像処理を同時実行した場合にRAM291bのメモリ帯域性能の上限値に達してしまう可能性がある。そのため、プリント処理部230及びスキャン処理部250に対して、リアルタイム性を求められないループバック処理の画像処理を、拡張コントローラ部201のループバック処理部241に割り当てる。この時、他のジョブによりメインコントローラ部200のループバック処理部240が既に使用されていた場合は、ループバック処理部240の処理を停止し、拡張コントローラ201のループバック処理部241に、再度、その画像処理を割り当てる。
S1209でCPU310は、デジタル複合機100の各部を制御し、受け付けたジョブに対する画像処理を実行する。このときS1204からS1209に進んだ場合は、画像処理はコントローラ部120のメインコントローラ部200のみを用いて実行され、このとき拡張コントローラ部201には電源が供給されていない。またS1208からS1209に進んだ場合は、コントローラ部120において、メインコントローラ部200及び拡張コントローラ部201の両方を用いて画像処理が実行される。
次にS1210に進みCPU310は、S1209で実行している画像処理が終了したか否かを判定し、画像処理が終了したと判定するとS1211へ進むが、そうでないときはS1210を実行する。S1211でCPU310は、拡張コントローラ部201のループバック処理部241が他のジョブで使用されているかどうか判定する。ここで他のジョブを受け付けて拡張コントローラ部201のループバック処理部241が使用されているときは、継続して拡張コントローラ部201を使用するようにして、この処理を終了する。
一方、S1211でCPU301は、拡張コントローラ部201のループバック処理部241が使用されていないと判定するとS1212に進む。S1212でCPU310は、リングバススイッチ220及び221を、拡張コントローラ部201を使用しない図8の状態に戻す。そしてS1213に進みCPU310は、拡張コントローラ部201の電源供給を停止する。具体的にはCPU310は、GPIO制御部390を制御してGPIO信号をロウレベルにする。これにより電源供給部294は、拡張コントローラ部201への電源供給を停止する。これにより拡張コントローラ部201は、再び省電力状態へと戻る。
以上説明したように実施形態によれば、メインコントローラ部200のRAM291bのメモリ帯域が、メモリ帯域性能の上限値に近づいた場合に、拡張コントローラ部へ電源を供給して、拡張コントローラ部により、機能の一部を代替させる。これにより、必要最低限、拡張コントローラ部を使用して、受け付けたジョブを実行させることができる。
実施形態によれば、帯域モニタ295が示すメモリ帯域性能に鑑みて、拡張コントローラ部201が省電力状態から復帰するよう制御することで、拡張コントローラ部201を使用する期間を最小限にできる。これにより、動作中のコントローラ部120の消費電力を低減させることが可能となる。
複数のプロセッサに処理を分散する場合、プロセスの数のみに基づいて、各プロセッサの負荷状況を判断する。そして、各プロセッサによるメモリアクセスの競合状態に関しては、各プロセスで使用するメモリ帯域の机上の計算値の合計に基づいて設計をする必要がある。このため、実際のメモリアクセスの競合の度合いに対して、マージンを持たせて設計する必要がある。従って、全体の消費電力を低減させるには限界がある。
これに対して実施形態では、バス帯域モニタ295で動的にモニタされたメモリ帯域を使用するため、実際に使用されているメモリ帯域に基づいて拡張コントローラ部を使用するか、しないかを判定できる。これにより、より効率的に、拡張コントローラ部を省電力状態に留まらせることができ、装置全体の消費電力を、より低減させることができる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は上記実施形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
100…複合機、120…コントローラ部、200…メインコントローラ部、201…拡張コントローラ部、210…システム制御部、220,221…リングバススイッチ、270,271…リングバススイッチ設定部、294…電源供給部、295…帯域モニタ、310…CPU

Claims (12)

  1. 複数の処理部を有する第1の制御部と、
    前記複数の処理部と少なくとも一つと共通する処理を実行できる第1処理部を含む複数の処理部を有する第2制御部と、
    前記第1及び第2の制御部への電源供給を制御する電源供給手段と、
    前記第1の制御部の前記複数の処理部の少なくとも一つを使用してジョブを実行する際、当該ジョブの実行に使用される処理部とメモリとの間のメモリ帯域性能を測定する測定手段と、
    前記測定手段により測定された前記メモリ帯域性能が所定値よりも大きい場合は、前記第1の制御部の複数の処理部の少なくとも一つにより実行される処理を、前記第1処理部に代替させ、前記測定手段により測定された前記メモリ帯域性能が所定値以下の場合は、前記電源供給手段により前記第2の制御部への電源供給を停止させるように制御する制御手段と、
    を有することを特徴とする画像処理装置。
  2. 前記メモリ帯域性能は、前記第1の制御部の複数の処理部と前記メモリとを接続するバスにおける単位時間当たりのデータ転送量であることを特徴とする請求項1に記載の画像処理装置。
  3. 前記制御手段は、前記測定手段により測定された前記メモリ帯域性能が所定値よりも大きくなることに応じて、前記第1の制御部の複数の処理部の少なくとも一つにより実行される処理の内、リアルタイム性を求められない処理を前記第1処理部に代替させることを特徴とする請求項1又は2に記載の画像処理装置。
  4. 前記リアルタイム性を求められない処理は、ループバック画像処理を含むことを特徴とする請求項3に記載の画像処理装置。
  5. 前記第1の制御部と前記第2の制御部とはリングバスを介して接続され、前記第1の制御部の前記複数の処理部は第1のバススイッチを介して接続され、前記第2の制御部の前記複数の処理部は第2のバススイッチを介して接続され、前記制御手段は、前記第1及び第2のバススイッチの切り替えを制御することにより、前記第1の制御部の複数の処理部の少なくとも一つにより実行される処理を、前記第1処理部に代替させることを特徴とする請求項1乃至4のいずれか1項に記載の画像処理装置。
  6. 前記第1の制御部は、前記第1のバススイッチの設定値を保持する第1保持手段を有し、前記第2の制御部は、前記第2のバススイッチの設定値を保持する第2保持手段を有することを特徴とする請求項5に記載の画像処理装置。
  7. 前記制御手段は、前記第1保持手段及び前記第2保持手段の設定値を設定することにより、前記第1の制御部の複数の処理部の少なくとも一つにより実行される処理を前記第1処理部に代替させることを特徴とする請求項6に記載の画像処理装置。
  8. 前記制御手段は、前記測定手段により測定された前記メモリ帯域性能が所定値以下のとき、前記第1の制御部の処理部だけで前記ジョブを実行するように前記第1保持手段の設定値を設定することを特徴とする請求項6に記載の画像処理装置。
  9. 前記測定手段は、前記第1の制御部の複数の処理部と前記メモリとの間に接続されて前記メモリのメモリ帯域性能を測定することを特徴とする請求項1乃至8のいずれか1項に記載の画像処理装置。
  10. 前記第1の制御部は、前記画像処理装置に組み込まれているメインの制御部であり、前記第2の制御部は、前記メインの制御部と着脱可能な機能拡張用の制御部であることを特徴とする請求項1乃至9のいずれか1項に記載の画像処理装置。
  11. 複数の処理部を有する第1の制御部と、前記複数の処理部と少なくとも一つと共通する処理を実行できる第1処理部を含む複数の処理部を有する第2制御部とを有する画像処理装置を制御する制御方法であって、
    前記第1の制御部の前記複数の処理部の少なくとも一つを使用してジョブを実行する際、当該ジョブの実行に使用される処理部とメモリとの間のメモリ帯域性能を測定する測定工程と、
    前記測定工程で測定された前記メモリ帯域性能が所定値よりも大きい場合、前記第1の制御部の複数の処理部の少なくとも一つにより実行される処理を、前記第1処理部に代替させ、前記測定工程で測定された前記メモリ帯域性能が所定値以下の場合は前記電源供給手段により前記第2の制御部への電源供給を停止させるように制御する制御工程と、
    を有することを特徴とする画像処理装置の制御方法。
  12. コンピュータに、請求項11に記載の制御方法の各工程を実行させるためのプログラム。
JP2017012540A 2017-01-26 2017-01-26 画像処理装置とその制御方法、及びプログラム Withdrawn JP2018118477A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017012540A JP2018118477A (ja) 2017-01-26 2017-01-26 画像処理装置とその制御方法、及びプログラム
US15/876,260 US20180213103A1 (en) 2017-01-26 2018-01-22 Image processing apparatus, method of controlling the same, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017012540A JP2018118477A (ja) 2017-01-26 2017-01-26 画像処理装置とその制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2018118477A true JP2018118477A (ja) 2018-08-02
JP2018118477A5 JP2018118477A5 (ja) 2020-02-20

Family

ID=62907268

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017012540A Withdrawn JP2018118477A (ja) 2017-01-26 2017-01-26 画像処理装置とその制御方法、及びプログラム

Country Status (2)

Country Link
US (1) US20180213103A1 (ja)
JP (1) JP2018118477A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7256660B2 (ja) * 2019-03-13 2023-04-12 キヤノン株式会社 画像形成装置、その制御方法、及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11103364A (ja) * 1997-09-26 1999-04-13 Ricoh Co Ltd ファクシミリ装置
US6970586B2 (en) * 2001-01-31 2005-11-29 General Electric Company Detector framing node architecture to communicate image data
JP4868012B2 (ja) * 2009-03-09 2012-02-01 日本電気株式会社 コンピュータシステム、コンピュータシステムの制御方法、及びプログラム
US8508822B2 (en) * 2010-08-10 2013-08-13 Kabushiki Kaisha Toshiba Decoloring device consecutively decoloring image on sheet, management device causing decoloring device to consecutively decoloring image on sheet, and decoloring system including decoloring device and management device

Also Published As

Publication number Publication date
US20180213103A1 (en) 2018-07-26

Similar Documents

Publication Publication Date Title
JP3660182B2 (ja) 画像処理装置
US7782480B2 (en) Image forming apparatus
US6226095B1 (en) Image processing apparatus, method, and system
JP6465843B2 (ja) リング型バスシステム
JP3907471B2 (ja) 画像入出力制御装置
JP2018118477A (ja) 画像処理装置とその制御方法、及びプログラム
JP4065550B2 (ja) 画像入出力制御装置、画像処理装置、画像入出力制御装置における画像処理方法、及び画像処理装置における画像処理方法
JP3714840B2 (ja) データ転送方法とデータ転送制御装置
JP6833491B2 (ja) 情報処理装置
JP3682442B2 (ja) 画像形成装置
JP3938837B2 (ja) 画像処理装置
JP3669574B2 (ja) 画像処理装置、画像処理方法およびその方法をコンピュータに実行させるプログラム、並びにそのプログラムを記録したコンピュータ読み取り可能な記録媒体
KR100570786B1 (ko) 복합기기의 제어기
JP4034323B2 (ja) 画像データ処理方法と画像データ処理装置及び画像形成装置
JP3703431B2 (ja) データ通信装置、画像処理装置、データ通信方法、及び画像処理装置におけるデータ通信方法
JP5202265B2 (ja) 画像処理装置、プログラム及び画像処理装置の制御方法
JP3670918B2 (ja) 画像処理装置
JP2010268411A (ja) 画像処理装置及びその制御方法、並びに、プログラム
JP2018086751A (ja) 情報処理装置、情報処理装置の制御法及びプログラム
JP2003348338A (ja) 情報処理装置
JP2001186355A (ja) 画像処理装置
JP2005242917A (ja) 画像形成装置
JP2006018406A (ja) 画像形成装置
JP2006229306A (ja) 画像処理装置
JP2004157609A (ja) 画像処理装置および画像処理システム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200106

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200106

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20200129