JP6720824B2 - 画像処理装置、画像処理装置の制御方法、およびプログラム - Google Patents

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

Info

Publication number
JP6720824B2
JP6720824B2 JP2016203305A JP2016203305A JP6720824B2 JP 6720824 B2 JP6720824 B2 JP 6720824B2 JP 2016203305 A JP2016203305 A JP 2016203305A JP 2016203305 A JP2016203305 A JP 2016203305A JP 6720824 B2 JP6720824 B2 JP 6720824B2
Authority
JP
Japan
Prior art keywords
image processing
function
processing apparatus
band
channel
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
JP2016203305A
Other languages
English (en)
Other versions
JP2018067748A (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.)
Konica Minolta Inc
Original Assignee
Konica Minolta 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 Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2016203305A priority Critical patent/JP6720824B2/ja
Priority to US15/782,693 priority patent/US10282318B2/en
Publication of JP2018067748A publication Critical patent/JP2018067748A/ja
Application granted granted Critical
Publication of JP6720824B2 publication Critical patent/JP6720824B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • 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/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/128Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network
    • 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/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/4031Coupling between buses using bus bridges with arbitration

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Facsimiles In General (AREA)
  • Storing Facsimile Image Data (AREA)

Description

本発明は、MFP(マルチ・ファンクション・ペリフェラル(Multi-Functional Peripheral))などの画像処理装置およびそれに関連する技術に関する。
プリントおよび/またはスキャン等に関する画像処理機能を有する画像処理装置(MFP等)が存在する。
近年、このような画像処理装置(MFP等)は、ネットワークにてサーバ装置として機能することも求められ、サーバ機能を搭載するMFPも存在する。当該MFPにおいては、サーバ機能と画像処理機能とがマルチタスクOS環境下において同時並列的に実現される。
特開2009−271944号公報
しかしながら、このようなMFPは、コスト制約等のため、一般的なサーバのような広帯域(大きな伝送容量)(且つ大容量)のメモリを搭載することは困難であり、MFP用の画像処理機能を実現することが可能な程度のメモリを有するにとどまる。
このような装置環境の下で、MFPのサーバ機能に関連する動作(サーバ動作とも称する)とMFPの画像処理機能に関連する動作(MFP動作とも称する)との両動作がMFPにて並列的に実行される場合には、メモリに関する競合が発生する。
たとえば、サーバ動作において比較的大きなメモリ帯域が利用されつつ当該両動作が並列的に実行される場合には、MFP動作にて利用可能なメモリ帯域が結果的に比較的少なくなることがある。その結果、MFP動作の所要時間が増大し、ユーザの待ち時間が増大する。より詳細には、ユーザがMFPにてコピーあるいはプリントを実行させようとしても、所要時間が通常よりも長くなり、ユーザは不快に感じる。
そこで、本発明は、サーバ機能と画像処理機能とを並列的に実行する画像処理装置において、共用されるメモリを有効に利用して、画像処理機能に関連する動作の遅延を抑制することが可能な技術を提供することを課題とする。
なお、特許文献1には、局所集中アクセスマスタと固定レートアクセスマスタとの2種類のマスタの所要バンド幅を保証することを意図する調停装置が記載されている。当該調停装置は、予め割り当てられているバンド幅以上のアクセス要求を局所集中アクセスマスタから受け付けた場合、予め設定した第1期間においてその要求を許可する。そして、第1期間が終了した後の第2期間において、局所集中アクセスマスタからのアクセス要求がマスクされ、固定レートアクセスマスタによるアクセスが実行される。
しかしながら、特許文献1の技術は、サーバ動作とMFP動作との競合に関するものではない。また、仮に、特許文献1の技術において、MFP動作を局所集中アクセスマスタに行わせ、サーバ動作を固定レートアクセスマスタに行わせるようにしたとしても、MFP動作に対する帯域が一定程度(予め割り当てられているバンド幅)を越えると、特に第1期間後においてはMFP動作の帯域を確保することができない。その結果、MFP動作の所要時間が増大し、ユーザの待ち時間が増大する。
上記課題を解決すべく、請求項1の発明は、画像処理装置であって、複数のメモリと、画像処理機能を含む第1の機能の実行動作とサーバ機能を含む第2の機能の実行動作とを前記複数のメモリを利用して制御する制御手段と、を備え、前記画像処理装置は、複数の動作モードを有しており、前記制御手段は、前記複数の動作モードのうちの前記画像処理装置の現在の動作モードに基づいて、前記第1の機能の実行動作に要するメモリ帯域である所要帯域を推定するとともに、前記複数のメモリにアクセスするための複数のチャネルのうち、前記第1の機能の実行動作に使用することが可能なチャネルであって前記第2の機能の実行動作には使用することが不可能なチャネルである第1機能向け帯域確保用チャネルを、前記所要帯域に基づいて決定することを特徴とする。
請求項2の発明は、請求項1の発明に係る画像処理装置において、前記制御手段は、前記所要帯域に関する複数の段階に応じて、前記複数のチャネルのうち前記第1の機能の実行動作に使用することが可能なチャネルを変更することを特徴とする。
請求項3の発明は、請求項2の発明に係る画像処理装置において、前記制御手段は、前記所要帯域に関する前記複数の段階のうち少なくとも1つの段階において、前記第1機能向け帯域確保用チャネルを前記複数のチャネルの中から決定することを特徴とする。
請求項4の発明は、請求項3の発明に係る画像処理装置において、前記制御手段は、前記所要帯域に関する前記複数の段階のうち2以上の段階において、前記第1機能向け帯域確保用チャネルを前記複数のチャネルの中から決定するとともに、前記所要帯域が大きくなるにつれて前記第1機能向け帯域確保用チャネルを拡大することを特徴とする。
請求項5の発明は、請求項1から請求項4のいずれかの発明に係る画像処理装置において、前記制御手段は、前記第1機能向け帯域確保用チャネルを、前記第1の機能に関する新たなジョブの実行開始前に決定することを特徴とする。
請求項6の発明は、請求項1から請求項5のいずれかの発明に係る画像処理装置において、前記制御手段は、前記所要帯域の推定後において、前記画像処理機能に関する画像圧縮処理で圧縮されたデータの実際の圧縮率に基づいて前記所要帯域を再び推定し、再推定後の前記所要帯域に基づいて前記第1機能向け帯域確保用チャネルを再決定することを特徴とする。
請求項7の発明は、請求項1から請求項5のいずれかの発明に係る画像処理装置において、前記制御手段は、前記所要帯域の推定後において、前記画像処理機能に関する画像種類判別処理での判別結果に基づいて前記所要帯域を再び推定し、再推定後の前記所要帯域に基づいて前記第1機能向け帯域確保用チャネルを再決定することを特徴とする。
請求項8の発明は、画像処理機能を含む第1の機能の実行動作とサーバ機能を含む第2の機能の実行動作とを複数のメモリを利用して制御する画像処理装置の制御方法であって、a)前記画像処理装置の複数の動作モードのうちの前記画像処理装置の現在の動作モードに基づいて、前記第1の機能の実行動作に要するメモリ帯域である所要帯域を推定するステップと、b)前記複数のメモリにアクセスするための複数のチャネルのうち、前記第1の機能の実行動作に使用することが可能なチャネルであって前記第2の機能の実行動作には使用することが不可能なチャネルである第1機能向け帯域確保用チャネルを、前記所要帯域に基づいて決定するステップと、を備えることを特徴とする。
請求項9の発明は、画像処理機能を含む第1の機能の実行動作とサーバ機能を含む第2の機能の実行動作とを複数のメモリを利用して制御する画像処理装置に、a)前記画像処理装置の複数の動作モードのうちの前記画像処理装置の現在の動作モードに基づいて、前記第1の機能の実行動作に要するメモリ帯域である所要帯域を推定するステップと、b)前記複数のメモリにアクセスするための複数のチャネルのうち、前記第1の機能の実行動作に使用することが可能なチャネルであって前記第2の機能の実行動作には使用することが不可能なチャネルである第1機能向け帯域確保用チャネルを、前記所要帯域に基づいて決定するステップと、を実行させるためのプログラムであることを特徴とする。
請求項10の発明は、画像処理装置であって、複数のメモリと、画像処理機能を含む第1の機能の実行動作とサーバ機能を含む第2の機能の実行動作とを前記複数のメモリを利用して制御する制御手段と、を備え、前記制御手段は、前記第1の機能の実行動作に要するメモリ帯域である所要帯域を、前記画像処理装置に対するユーザの操作状況に基づいて推定するとともに、前記複数のメモリにアクセスするための複数のチャネルのうち、前記第1の機能の実行動作に使用することが可能なチャネルであって前記第2の機能の実行動作には使用することが不可能なチャネルである第1機能向け帯域確保用チャネルを、前記所要帯域に基づいて決定することを特徴とする。
請求項11の発明は、請求項10の発明に係る画像処理装置において、前記ユーザの前記操作状況は、前記ユーザが前記画像処理装置に接近して前記画像処理装置の前に居る状況と、前記ユーザが前記画像処理装置のパネル操作を開始し且つ前記パネル操作にてコピー設定画面を選択した状況と、前記ユーザが前記画像処理装置のパネル操作を開始し且つ前記パネル操作にてスキャン設定画面を選択した状況と、前記ユーザが前記画像処理装置の自動給紙機構に対する操作を開始した状況と、前記ユーザが前記画像処理装置の原稿台に対する操作を開始した状況と、前記ユーザが前記画像処理装置のパネル操作を開始し且つ前記パネル操作にてボックス保存画面を選択した状況と、前記ユーザが遠隔操作のために前記画像処理装置への接続を開始した状況と、前記ユーザがネットワーク経由で前記画像処理装置へのプリント依頼を開始した状況と、のいずれかを含むことを特徴とする。
請求項12の発明は、請求項10の発明に係る画像処理装置において、前記ユーザの前記操作状況は、前記ユーザが前記画像処理装置のパネル操作を開始し且つ前記パネル操作にてコピー設定画面を選択した状況、を含むことを特徴とする。
請求項13の発明は、請求項12の発明に係る画像処理装置において、前記制御手段は、コピージョブに関連する設定内容に基づいて前記所要帯域を推定することを特徴とする。
請求項14の発明は、請求項10の発明に係る画像処理装置において、前記ユーザの前記操作状況は、前記ユーザが前記画像処理装置のパネル操作を開始し且つ前記パネル操作にてスキャン設定画面を選択した状況と、前記ユーザが前記画像処理装置の自動給紙機構に対する操作を開始した状況と、前記ユーザが前記画像処理装置の原稿台に対する操作を開始した状況と、のいずれかを含むことを特徴とする。
請求項15の発明は、請求項14の発明に係る画像処理装置において、前記制御手段は、スキャンジョブに関連する設定内容に基づいて前記所要帯域を推定することを特徴とする。
請求項16の発明は、請求項10の発明に係る画像処理装置において、前記ユーザの前記操作状況は、前記ユーザがネットワーク経由で前記画像処理装置へのプリント依頼を開始した状況、を含むことを特徴とする。
請求項17の発明は、請求項16の発明に係る画像処理装置において、前記制御手段は、プリントジョブに関連する設定内容に基づいて前記所要帯域を推定することを特徴とする。
請求項18の発明は、請求項12から請求項17のいずれかの発明に係る画像処理装置において、前記制御手段は、前記所要帯域の推定後において、前記画像処理機能に関する画像圧縮処理で圧縮されたデータの実際の圧縮率に基づいて前記所要帯域を再び推定し、再推定後の前記所要帯域に基づいて前記第1機能向け帯域確保用チャネルを再決定することを特徴とする。
請求項19の発明は、請求項12から請求項17のいずれかの発明に係る画像処理装置において、前記制御手段は、前記所要帯域の推定後において、前記画像処理機能に関する画像種類判別処理での判別結果に基づいて前記所要帯域を再び推定し、再推定後の前記所要帯域に基づいて前記第1機能向け帯域確保用チャネルを再決定することを特徴とする。
請求項20の発明は、請求項10から請求項19のいずれかの発明に係る画像処理装置において、前記制御手段は、前記第1機能向け帯域確保用チャネルを、前記第1の機能に関する新たなジョブの実行開始前に決定することを特徴とする。
請求項21の発明は、画像処理機能を含む第1の機能の実行動作とサーバ機能を含む第2の機能の実行動作とを複数のメモリを利用して制御する画像処理装置の制御方法であって、a)前記第1の機能の実行動作に要するメモリ帯域である所要帯域を、前記画像処理装置に対するユーザの操作状況に基づいて推定するステップと、b)前記複数のメモリにアクセスするための複数のチャネルのうち、前記第1の機能の実行動作に使用することが可能なチャネルであって前記第2の機能の実行動作には使用することが不可能なチャネルである第1機能向け帯域確保用チャネルを、前記所要帯域に基づいて決定するステップと、を備えることを特徴とする。
請求項22の発明は、画像処理機能を含む第1の機能の実行動作とサーバ機能を含む第2の機能の実行動作とを複数のメモリを利用して制御する画像処理装置に、a)前記第1の機能の実行動作に要するメモリ帯域である所要帯域を、前記画像処理装置に対するユーザの操作状況に基づいて推定するステップと、b)前記複数のメモリにアクセスするための複数のチャネルのうち、前記第1の機能の実行動作に使用することが可能なチャネルであって前記第2の機能の実行動作には使用することが不可能なチャネルである第1機能向け帯域確保用チャネルを、前記所要帯域に基づいて決定するステップと、を実行させるためのプログラムであることを特徴とする。
請求項1から請求項22に記載の発明によれば、サーバ機能と画像処理機能とを並列的に実行する画像処理装置において、共用されるメモリを有効に利用して、画像処理機能に関連する動作の遅延を抑制することが可能である。
画像処理装置の機能ブロックを示す図である。 画像処理装置の外観を示す図である。 コントローラの詳細なハードウエア構成を示す図である。 MFPの動作モードと使用チャネルとの関係を示す図である。 MFPの動作を示すフローチャートである。 各プロセス等に関するメモリ内での配置(移動前)を示す図である。 各プロセス等に関するメモリ内での配置(移動後)を示す図である。 第2実施形態に係る動作を示すフローチャートである。 ユーザの操作状況と当該操作状況に対して推定される所要帯域との関係を示す図である。 各ジョブに関する設定内容を示す図である。 コピー動作におけるメモリアクセスに関する処理を模式的に示す図である。
以下、本発明の実施形態を図面に基づいて説明する。
<1.第1実施形態>
<1−1.情報処理装置の構成>
図1は、画像処理装置(より詳細にはMFP)10の機能ブロックを示す図である。ここでは、画像処理装置としてMFP(マルチ・ファンクション・ペリフェラル(Multi-Functional Peripheral))10を例示する。また、図2は、MFP10の外観を示す図である。
MFP10は、スキャン機能、コピー機能、ファクシミリ機能およびボックス格納機能などを備える装置(複合機とも称する)である。具体的には、MFP10は、図1の機能ブロック図に示すように、画像読取部2、印刷出力部3、通信部4、格納部5、操作部6およびコントローラ9等を備えており、これらの各部を複合的に動作させることによって、各種の機能を実現する。なお、MFP10は、画像形成装置あるいは画像処理装置とも称される。
画像読取部2は、MFP10の所定の位置(ADF(原稿自動送り装置(Auto Document Feeder))あるいはガラス面(透光性原稿台)等)に載置された原稿を光学的に読み取って(すなわちスキャンして)、当該原稿の画像データ(原稿画像あるいはスキャン画像とも称する)を生成する処理部である。この画像読取部2は、スキャン部であるとも称される。
印刷出力部3は、印刷対象に関するデータに基づいて紙などの各種の媒体に画像を印刷出力する出力部である。
通信部4は、公衆回線等を介したファクシミリ通信を行うことが可能な処理部である。さらに、通信部4は、各種のネットワーク通信を行うことも可能である。
格納部5は、ハードディスクドライブ(HDD)等の記憶装置で構成される。
操作部6は、MFP10に対する操作入力を受け付ける操作入力部6aと、各種情報の表示出力を行う表示部6bとを備えている。
このMFP10においては、略板状の操作パネル部6c(図2参照)が設けられている。また、操作パネル部6cは、その正面側にタッチパネル25(図2参照)を有している。タッチパネル25は、操作入力部6aの一部としても機能するとともに、表示部6bの一部としても機能する。タッチパネル25は、液晶表示パネルに各種センサ等が埋め込まれて構成され、各種情報を表示するとともに操作者からの各種の操作入力を受け付けることが可能である。
コントローラ(制御部)9(図1参照)は、MFP10に内蔵され、MFP10を統括的に制御する制御装置である。コントローラ9は、CPUおよび各種の半導体メモリ(RAMおよびROM)等を備えるコンピュータシステムとして構成される。コントローラ9は、CPUにおいて、ブート用のメモリ(フラッシュメモリ等)内に格納されている所定のソフトウエアプログラム(以下、単にプログラムとも称する)を実行することによって、各種の処理部を実現する。なお、当該プログラム(詳細にはプログラムモジュール群)は、USBメモリなどの可搬性の記録媒体に記録され、当該記録媒体から読み出されてMFP10にインストールされるようにしてもよい。あるいは、当該プログラムは、ネットワークを経由してダウンロードされてMFP10にインストールされるようにしてもよい。
具体的には、図1に示すように、コントローラ9は、上記のプログラムの実行により、通信制御部11と入力制御部12と表示制御部13とジョブ制御部14とを含む各種の処理部を実現する。
通信制御部11は、他の装置との間の通信動作を通信部4等と協働して制御する処理部である。通信制御部11は、各種データの送信動作を制御する送信制御部と各種データの受信動作を制御する受信制御部とを有する。
入力制御部12は、操作入力部6a(タッチパネル25等)に対する操作入力動作を制御する制御部である。たとえば、入力制御部12は、タッチパネル25に表示された操作画面に対する操作入力を受け付ける動作を制御する。
表示制御部13は、表示部6b(タッチパネル25等)における表示動作を制御する処理部である。
ジョブ制御部14は、各種のジョブに関する動作(印刷出力動作、画像読取動作等)を制御する処理部である。
<1−2.コントローラの詳細構成>
図3は、コントローラ9の詳細なハードウエア構成を示す図である。
コントローラ9は、この実施形態では、CPU31およびDRAMコントローラ36等をワンチップ内に収めたSoC(System-on-a-Chip:システム・オン・チップ)を備えて構成される。
SoCは、CPU31(詳細には、複数(ここでは4つ)のCPUコア31a〜31d)と複数(ここでは2つ)のMMU(Memory Management Unit:メモリ管理ユニット )33とDRAMコントローラ36とDMA(Direct Memory Access)コントローラ41とSMMU(システムメモリ管理ユニット)42と画像処理回路43とSATA(Serial ATA)コントローラ44とメモリコントローラ45とネットワークコントローラ46とを備えて構成される。各部31,36,41,44,45,46は、SoCの内部バス39等を介して相互に接続されており、データの送受信を相互に行うことが可能である。
画像処理回路43は、DMAコントローラ41(MFP向けのデータ処理用(画像処理用)のDMAコントローラ)、SMMU42およびバス39等を介して、各部31,36,44,45,46との間でデータを送受信することが可能である。
また、コントローラ9は、高速動作可能な揮発性記憶部51(詳細には、複数(ここでは4つ)のメモリ(DRAM:Dynamic Random Access Memory)(51a〜51d))、大容量の不揮発性記憶部54(HDD(hard disk drive)およびSSD(solid state drive)等)、およびブートメモリ55(フラッシュメモリ等)等を備えて構成される。
複数のDRAM51(詳細には、4つのDRAM51a〜51d)は、DRAMコントローラ36およびバス39を介して、各部31,41,43,44,45,46との間でデータを送受信することが可能である。なお、4つのDRAM51a〜51dは、MFP動作(後述)とサーバ動作(後述)との両動作で共用される。
不揮発性記憶部54は、SATAコントローラ44およびバス39を介して、各部31,36,41,45,46との間でデータを送受信することが可能である。
ブートメモリ55は、メモリコントローラ45およびバス39を介して、各部31,36,41,44,45,46との間でデータを送受信することが可能である。
ネットワークコントローラ46は、ネットワーク端子56を介した外部通信を制御する処理部である。ネットワークコントローラ46は、各部31,36,41,44,45との間でのバス39を介したデータの送受信をも制御する。ネットワークコントローラ46は、外部装置からのデータの受信動作および装置内部への転送動作、および外部装置へのデータの送信動作(装置内部からの転送動作を含む)等を制御する。
各CPUコア31a〜31dは、MFP動作(「画像処理機能を含む第1の機能の実行動作」とも称される)とサーバ動作(「サーバ機能を含む第2の機能の実行動作」とも称される)とを実行する。より具体的には、MFP動作実行用のアプリケーションソフトウエアプログラムとサーバ動作実行用のアプリケーションソフトウエアプログラムとがCPUコア31a〜31d(CPU31とも称する)によって実行される。たとえば、MFP動作実行用のプログラムに関するプロセス(CPU31からの直接指令に基づいてデータにアクセスするプロセス、およびMFP内のDMAコントローラの管理下でCPU31を介さずにデータにアクセスするプロセス等)がCPU31(CPUコア31a〜31d)によって実行される。また、サーバ動作実行用のプログラムに関するプロセス(サーバプロセス等)がCPU31(31a〜31d)によって実行される。これらの各種のプロセスは、マルチタスクOSの管理下で同時並列的に実行され得る。
MFP動作は、MFP(画像処理装置)で実行される画像処理を伴う動作であり、プリント動作、スキャン動作、コピー動作等が例示される。また、サーバ動作は、ファイルサーバ機能、ウエブサーバ機能等のサーバ機能を実現するための動作である。なお、各プロセスがMFP動作のプロセス(第1機能プロセス)であるのかサーバ動作のプロセス(第2機能プロセス)であるかは、(プログラムの設計者等によって)予め決定されており、CPU31等によって管理されればよい。
また、ここでは、SMP(Symmetrical Multi Processing:対称型マルチプロセッシング)方式によって、各種のアプリケーションソフトウエアプログラム(MFP動作およびサーバ動作に関する各種のプログラム)に関する複数のプロセスが並列的に処理されるものとする。SMP方式においては、複数のCPU(ないしCPUコア)によって1つの共通のメモリ空間を使用し、複数のCPU相互間で情報を共有することが可能である。SMP方式においては、各CPU(ないしCPUコア)は、他のCPU(ないしCPUコア)と同等に取り扱われ、当該他のCPUと同様の処理を実行することが可能である。たとえば、各CPU(ないしCPUコア)は、MFP動作実行用のプログラムに関するプロセスを実行することも可能であり、サーバ動作実行用のプログラムに関するプロセスを実行することも可能である。
この実施形態では、DRAMコントローラ36は、4つのメモリチャネルCh1〜Ch4を有している。DRAMコントローラ36は、各メモリチャネル(単にチャネルとも表記する)を介して4つのDRAM51のそれぞれとの間でデータの送受信を行うことが可能である。具体的には、DRAMコントローラ36は、第1のチャネルCh1を介してDRAM51aとの間でのデータの送受信を行うことが可能であり、第2のチャネルCh2を介してDRAM51bとの間でのデータの送受信を行うことが可能である。同様に、DRAMコントローラ36は、第3のチャネルCh3を介してDRAM51cとの間でのデータの送受信を行うことが可能であり、第4のチャネルCh4を介してDRAM51dとの間でのデータの送受信を行うことが可能である。
コントローラ9においては、4つのDRAM51(51a〜51d)がシステムメモリとして利用される。詳細には、4つのDRAM51が1つの共通のメモリ空間にマッピングして利用される。なお、4つのDRAM51(51a〜51d)は、共通の物理アドレスにマッピングされるものの、OS(オペレーティングシステム)によって物理アドレスと仮想アドレスとの変換が行われる(図6参照)。アプリケーション側からは、仮想アドレスを利用することが可能であり、アプリケーション側からは物理アドレスを直接利用することは通常行われない。物理アドレス自体、および物理アドレスと仮想アドレスとの変換処理は、OSによって管理される。なお、仮想アドレスと物理アドレスとの変換処理は、OSの管理下においてMMU33(図3参照)等によって行われる。
<1−3.DRAMのアクセス制御>
1つのチャネルに1つのDRAMが接続されている場合、DRAM51のメモリ帯域(DRAMに対するデータアクセスにおける伝送容量)は、次のように算出される。たとえば、1つのチャネルに1つのDRAM「DDR3 16bit 1600Mbps」が接続されている場合、理論上のメモリ帯域は、1つのチャネルあたり、3.2GB/s(ギガバイト/秒)である。ただし、諸々の事情を考慮すると、当該メモリ帯域の実効値(実効転送帯域)は、通常、理論値の30%〜50%程度に低下する。そのため、1つのチャネルあたりのメモリ帯域(実効値)は、たとえば、1.0GB/s(ギガバイト/秒)程度である、と考えられる。
一方、MFP動作で要求されるメモリ帯域(所要帯域)は、MFP動作の種類等によって変動する。たとえば、MFP10の待機中においては比較的小さなメモリ帯域(たとえば、0.2GB/s)しか使用されず、逆にプリント動作においては比較的大きなメモリ帯域(たとえば、1.5GB/s)が使用され得る。また、スキャン動作においては、さらに大きなメモリ帯域(たとえば、2.5GB/s)が使用され得る。
図4に示すように、MFP10は、MFP10の動作状態に応じた複数の段階の動作モードの一例を有している。各動作モード(ここでは5段階の動作モードD1〜D5)は、MFP10における各画像処理の所要帯域(端的に言えば、MFP動作の所要帯域)に応じて分類されている、とも表現され得る。
動作モードD1は、MFP10が待機状態を有しているモードであり、MFP10の「待機中モード」とも称される。動作モードD1は、最も小さな所要帯域(MFP動作の所要帯域)に対応する動作モードである。動作モードD1では、たとえば最大で0.2GB/sのメモリ帯域が利用される。
動作モードD2は、MFP10にて操作パネル部6cを利用した動作(各種設定操作(ただし、個別のジョブに関する設定操作を除く設定操作)、ブラウザ利用操作等)が行われるモードであり、「パネル動作モード」とも称される。動作モードD2は、動作モードD1よりも1段階大きな所要帯域に対応する動作モードである。動作モードD2では、たとえば、操作パネル部6cのタッチパネル25を用いたブラウジング動作(より詳細には動画再生実行時)等において、最大で0.5GB/sのメモリ帯域が利用される。操作パネル部6cの操作が開始されると、動作モードD2に遷移した旨が判定される。ただし、操作パネル部6cを用いた操作において、スキャン(およびコピー)に関する設定操作が行われると、後述する動作モードD4に遷移した旨が判定される。また、操作パネル部6cに対する無操作期間が一定期間以上継続すると、動作モードD2から別の動作モード(たとえば動作モードD1)に遷移した旨が判定される。
動作モードD3は、MFP10にてプリント動作(プリントジョブ)が実行されているモードであり、「プリント動作モード」とも称される。動作モードD3は、動作モードD2よりも1段階大きな所要帯域に対応する動作モードである。動作モードD3では、たとえば最大で1.5GB/sのメモリ帯域が利用される。MFP10にネットワーク接続されたパーソナルコンピュータからのプリント要求が受け付けられると、動作モードD3に遷移した旨が判定される。換言すれば、プリント要求の受信後且つプリントデータ(次述)の受信前の時点で、動作モードD3に遷移した旨が判定される。その後、プリントデータ(ページ記述言語(PDL)で記述されたプリントデータ)の受信動作および当該プリントデータに基づく印刷出力動作等が動作モードD3において実行される。印刷出力動作が完了すると、動作モードD3から別の動作モードに遷移した旨が判定される。
動作モードD4は、MFP10にてスキャン動作(原稿をスキャンしてスキャン画像を生成するジョブ(スキャンジョブおよびコピージョブ等))が実行されているモードであり、「スキャン動作モード」とも称される。動作モードD4は、動作モードD3よりも1段階大きな所要帯域に対応する動作モードである。動作モードD4では、たとえば最大で2.5GB/sのメモリ帯域が利用される。スキャンジョブに関する設定操作あるいはADF等への原稿の載置操作等が検出されると(スキャンジョブの実行開始指令(スタートボタン押下)の受付前に)、動作モードD4に遷移した旨が判定される。その後(スタートボタン押下後に)、スキャンジョブ(スキャン画像生成処理(画像読取処理および画像圧縮処理等)、ネットワーク送信処理および/または印刷出力処理等)が動作モードD4において実行される。スキャンジョブが完了すると、動作モードD4から別の動作モードに遷移した旨が判定される。なお、スキャン動作モードD4においては、スキャン処理を伴う各種動作(スキャン配信動作(スキャン画像を生成し且つ当該スキャン画像をネットワーク等を介して配信する動作)およびコピー動作等)が行われる。
動作モードD5は、MFPにて2以上の複合動作(たとえば、コピー動作とネットワークプリント動作(プリント受信動作等)との2つの動作)が並列的に実行されているモードであり、「複合動作モード」とも称される。動作モードD5は、動作モードD4よりも1段階大きな所要帯域に対応する動作モードである。動作モードD5では、たとえば最大で3.2GB/sのメモリ帯域が利用される。一のMFP動作(たとえばコピー動作)の実行中に他のMFP動作(たとえばプリントデータ受信)が開始されると、動作モードD5に遷移した旨が判定される。また、複合動作が動作モードD5において実行され、当該複合動作のうちの少なくとも1つの動作が完了して単一動作のみが実行されている状態に戻ると、動作モードD5から別の動作モード(たとえば動作モードD3)に遷移した旨が判定される。
このような事情を考慮し、この実施形態では、これら複数の段階(5段階)の動作モードのうちのMFP10の現在の動作モードに基づいて、当該現在の動作モードでのMFP動作に要するメモリ帯域(所要帯域)が推定される。より詳細には、現在の動作モードでのMFP動作に要するメモリ帯域の最大値が「所要帯域」として推定される。そして、推定された「所要帯域」に基づいて、MFP動作に使用することが可能なチャネル(「MFP動作用チャネル」あるいは「第1機能用チャネル」とも称する)が、複数のチャネルCh1〜Ch4の中から予め(実際のメモリ使用に先立って)決定される。また、併せて、サーバ動作に使用することが可能なチャネル(「サーバ動作用チャネル」あるいは「第2機能用チャネル」とも称する)もが決定される。「MFP動作用チャネル」および「サーバ動作用チャネル」は、好ましくは、第1の機能に関する新たなジョブ(スキャンジョブ、コピージョブ、プリントジョブ等)の実行開始前(スタートボタンが押下される前の時点、あるいはプリント要求受信後且つプリントデータ受信前の時点等)に決定される。換言すれば、各ジョブに関する画像処理等の実行開始前に決定される。なお、これらの動作(推定動作および決定動作)は、CPU31等によって行われる。また、ここでは、1つのチャネルに1つのDRAMが対応付けられており、1つのDRAMを割り当てることと1つのチャネルを割り当てることとは等価である。
より具体的には、MFP10の動作モードが(2番目の)動作モードD2である旨が判定されるときには、MFP動作に対して1つのDRAM51a(換言すれば、1つのチャネルCh1)が割り当てられる。1つのチャネルCh1のメモリ帯域(実効値)は、1.0GB/sであるので、この割り当てにより、動作モードD2の所要帯域(0.5GB/s)(MFP動作用の所要帯域)が確保される。また、サーバ動作に対して他の3つのDRAM51b,51c,51d(換言すれば、3つのチャネルCh2,Ch3,Ch4)が割り当てられる。この動作モードD2では、MFP動作とサーバ動作とに対して複数のチャネルが排他的に割り当てられる。換言すれば、MFP動作に対して、サーバ動作では使用することが不可能なチャネルCh1が割り当てられる。これによれば、MFP動作に対してサーバ動作が与える影響を抑制することが可能である。
なお、当該チャネルCh1は、MFP動作とサーバー動作との両動作のうちMFP動作に専ら使用されるチャネル(サーバ動作に使用することが不可能なチャネル)であることから、「MFP動作専用チャネル」あるいは「第1機能専用チャネル」とも称される。また、チャネルCh2,Ch3,Ch4は、サーバ動作とMFP動作との両動作のうちサーバ動作に専ら使用されるチャネル(MFP動作に使用することが不可能なチャネル)であることから、「サーバ動作専用チャネル」あるいは「第2機能専用チャネル」とも称される。ここにおいて、MFP動作およびサーバ動作に関する「専用」(チャネル)は、MFP動作とサーバー動作との両動作のうちの一方の動作のみに用いられることを意味し、当該両動作以外の動作に用いられることは排除されない。また、「第1機能専用チャネル」(あるいは「MFP動作専用チャネル」)は、第1機能向け(あるいはMFP動作向け)の帯域を確保するためのチャネルであることから、「第1機能向け帯域確保用チャネル」(あるいは「MFP動作向け帯域確保用チャネル」)とも称される。同様に、「第2機能専用チャネル」(あるいは「サーバ動作専用チャネル」)は、第2機能向け(あるいはサーバ動作向け)の帯域を確保するためのチャネルであることから、「第2機能向け帯域確保用チャネル」(あるいは「サーバ動作向け帯域確保用チャネル」)とも称される。
また、MFP10の動作モードが動作モードD3である旨が判定されるときには、MFP動作に対して2つのDRAM51a,51b(換言すれば、2つのチャネルCh1,Ch2)が割り当てられる。2つのチャネルCh1,Ch2の合計のメモリ帯域(実効値)は、2.0GB/sであるので、この割り当てにより、動作モードD3の所要帯域(1.5GB/s)(MFP動作用の所要帯域)が確保される。また、サーバ動作に対して他の2つのDRAM51c,51d(換言すれば、2つのチャネルCh3,Ch4)が割り当てられる。動作モードD3では、MFP動作とサーバ動作とに対して複数のチャネルが排他的に割り当てられる。換言すれば、MFP動作に対して、サーバ動作では使用することが不可能なチャネルCh1,Ch2(「MFP動作専用チャネル」)が割り当てられる。これによれば、MFP動作に対してサーバ動作が与える影響を抑制することが可能である。
また、MFP10の動作モードが動作モードD4である旨が判定されるときには、MFP動作に対して3つのDRAM51a,51b,51c(換言すれば、3つのチャネルCh1,Ch2,Ch3)が割り当てられる。3つのチャネルCh1,Ch2,Ch3の合計のメモリ帯域(実効値)は、3.0GB/sであるので、この割り当てにより、動作モードD4の所要帯域(2.5GB/s)(MFP動作用の所要帯域)が確保される。また、サーバ動作に対して他の1つのDRAM51d(換言すれば、1つのチャネルCh4)が割り当てられる。動作モードD4では、MFP動作とサーバ動作とに対して複数のチャネルが排他的に割り当てられる。換言すれば、MFP動作に対して、サーバ動作では使用することが不可能なチャネルCh1,Ch2,Ch3(「MFP動作専用チャネル」)が割り当てられる。これによれば、MFP動作に対してサーバ動作が与える影響を抑制することが可能である。
また、MFP10の動作モードが動作モードD5である旨が判定されるときには、MFP動作に対して4つのDRAM51a,51b,51c,51d(換言すれば、4つのチャネルCh1,Ch2,Ch3,Ch4)が割り当てられる。ただし、DRAM51d(チャネルCh4)は、サーバ動作に対しても割り当てられる。すなわち、動作モードD5においては、3つのチャネルCh1,Ch2,Ch3が「MFP動作専用チャネル」であり、残りのチャネルCh4(換言すれば、DRAM51d)は、MFP動作とサーバ動作とで共用される。共用されるチャネルCh4(DRAM51d)に関しては、各プロセス(MFP動作プロセスおよびサーバ動作プロセス等)の優先順位をバストラフィックレベルで決定する調停動作(好ましくは、MFP動作プロセスがサーバ動作プロセスよりも優先される調停動作)が行われればよい。4つのチャネルCh1〜Ch4の合計のメモリ帯域(実効値)は、4.0GB/sであるので、この割り当てにより、動作モードD4の所要帯域(3.2GB/s)(MFP動作用の所要帯域)が確保され易くなる。
また、MFP10の動作モードが動作モードD1である旨が判定されるときには、MFP動作に対して1つのDRAM51a(換言すれば、1つのチャネルCh1)が割り当てられる。サーバ動作に対しては、4つのDRAM51a,51b,51c,51d(換言すれば、4つのチャネルCh1,Ch2,Ch3,Ch4)が割り当てられる。動作モードD1においては、DRAM51a(換言すれば、チャネルCh1)は、MFP動作とサーバ動作とで共用される。共用されるDRAM51aに関しては、各プロセスの優先順位をバストラフィックレベルで決定する調停動作(好ましくは、MFP動作プロセスがサーバ動作プロセスよりも優先される調停動作)が行われればよい。
なお、いずれの動作モードD1〜D5においても、仮に、サーバ動作にて割り当てられたDRAM(換言すれば、割り当てられたチャネル)では処理能力(メモリ帯域)が不足する場合には、当該割り当てられたDRAMのみならず仮想メモリ(HDD等)もが併せてサーバ動作に利用されればよい。また、MFP動作に関しては、MFPの現在の動作モードに応じて割当内容(DRAMに関する割当内容)が変更されるので、基本的には、当該MFP動作にて割り当てられたDRAM(換言すれば、割り当てられたチャネル)で処理能力(メモリ帯域)が不足することはない。ただし、仮にMFP動作に関する処理能力不足が生じた場合には、同様に仮想メモリ(HDD等)もがMFP動作に利用されればよい。
以上のように、各動作モードD1〜D5における各所要帯域に応じて、複数のチャネルCh1〜Ch4のうち、第1機能用チャネル(MFP動作用チャネル)として利用されるチャネルが段階的に変更される。換言すれば、複数のチャネルCh1〜Ch4のうち第1機能用チャネルとして利用されるチャネルが、所要帯域に関する複数の段階(「0.2」,「0.5」、「1.5」,「2.5」,「3.2」(GB/s))に応じて変更される。詳細には、各動作モードに応じて推定された「所要帯域」が大きくなるにつれて、第1機能専用チャネル(MFP動作専用チャネル)(より詳細には、その帯域)が拡大される。
<1−4.動作>
次に、MFP10の認証動作等について図5のフローチャート等を参照しながら説明する。
まず、ステップS11において、CPU31は、動作モードの変更の有無を判定する。具体的には、現在の動作モード(最新の動作モード)とそれまでの動作モードとの比較が行われる。現在の動作モードがそれまでの動作モードと異なる場合には、動作モードが変更された旨が判定され、ステップS12に進む。
現在の動作モードは、MFP10が実際に実行している動作等に基づいて判定される。
たとえば、MFP10が待機中状態を有している場合には、MFP10は動作モードD1を有している旨が判定される。その後、たとえば、プリント要求が受信されると、動作モードD3に遷移した旨が判定される。また、当該プリント要求に応じたプリントジョブの実行期間中においては、MFP10は動作モードD3を引き続き有する旨が判定される。また、当該プリントジョブの実行が終了すると、MFP10の動作モードが更新される(たとえば、動作モードD1に復帰する)。
ステップS12において、CPU31は、変更後の動作モードに基づいてMFP動作用の所要帯域(MFP動作に要するメモリ帯域)を推定し、その推定結果に基づき「MFP動作用チャネル」および「サーバ動作用チャネル」を決定する。
たとえば、動作モードD1から動作モードD3へと遷移した場合には、MFP動作用の所要帯域が「1.5GB/s」であると推定される(図4参照)。そして、推定された所要帯域に基づいて、複数のチャネルCh1〜Ch4のうち、チャネルCh1,Ch2が「MFP動作用チャネル」(MFP動作専用チャネル)として決定され、チャネルCh3,Ch4が「サーバ動作用チャネル」(サーバ動作専用チャネル)として決定される(図4参照)。
さらに、CPU31は、決定された「MFP動作専用チャネル」を用いてMFP動作を実行し、決定された「サーバ動作用チャネル」を用いてサーバ動作を実行する(図7参照)。
より詳細には、モード遷移直後において、CPU31は、各「サーバプロセス」がDRAM51a,51b(チャネルCh1,Ch2(MFP動作専用チャネル)に対応するDRAM)に残っているか否かを判定する。具体的には、CPU31で実行されるアプリケーションプログラムは、各サーバプロセスのプロセスIDを取得するとともに、当該プロセスIDのプロセスで使用されている物理アドレス等をOSに問い合わせて取得し、当該物理アドレスがDRAM51a,51b内のアドレスであるか否か等を判定する。
当該モード遷移直後において、サーバ動作用プロセス(およびサーバ動作用データ)がDRAM51a,51b(チャネルCh1,Ch2(MFP動作専用チャネル)に対応するDRAM)に残っている場合には、まず、当該サーバ動作用プロセス(およびそのデータ)は、DRAM51c,51d(チャネルCh3,Ch4(サーバ動作専用チャネル)に対応するDRAM)あるいは仮想メモリ(HDD等)に移動される。
たとえば、動作モードD3への遷移直後にて、図6に示すようにDRAM51a内に「サーバプロセス1」が存在していた場合には、「サーバプロセス1」(およびそのデータ)はDRAM51dに移動される(図7参照)。なお、図6における各「プロセス」(サーバプロセスおよびMFPプロセス)には、当該各プロセスのプログラム自体と当該各プロセスで利用されるデータとの双方が含まれているものとする。
このような移動動作は、アプリケーションが「サーバプロセス1」をDRAM51c,51d内に移動すべき旨の移動指示をOSに伝達すること等によって実現される。なお、その他の「サーバプロセス」に関しても同様にして移動指示が付与されればよい。当該移動指示に応答して、OSは、DRAM51a,51bに存在する「サーバプロセス」(およびそのデータ)をDRAM51c,51dあるいは仮想メモリ(HDD等)に移動する。
なお、動作モードD5から動作モードD3に遷移した場合などにおいては、モード遷移直後にて、逆にMFP動作用プロセス(およびMFP動作用データ)がDRAM51c,51d(チャネルCh3,Ch4(サーバ動作専用チャネル)に対応するDRAM)に残っていることがある。このような場合には、まず、当該MFP動作用プロセス(およびそのデータ)は、DRAM51a,51b(チャネルCh1,Ch2(MFP動作専用チャネル)に対応するDRAM)に移動されればよい。
このような移動動作は、アプリケーションが「MFPプロセス」をDRAM51a,51b内に移動すべき旨の移動指示をOSに伝達すること等によって実現される。当該移動指示に応答して、OSは、DRAM51c,51dに存在する「MFPプロセス」(およびそのデータ)をDRAM51a,51bに移動する。
ステップS12の処理が終了すると、各プロセスが実行される。
たとえば、MFP動作用プロセスがCPU31a〜31dのいずれかで実行される際には、当該MFP動作用プロセスは、DRAM51a,51b(チャネルCh1,Ch2(MFP動作専用チャネル)に対応するDRAM)を利用して実行される。詳細には、当該MFP動作用プロセスは、DRAM51a,51bを用いてデータの送受信(DRAM51a,51bに関する書込処理および/または読出処理を含む)を実行する。なお、当該MFP動作用プロセスには、DMAコントローラ41と各種の画像処理回路43との間でCPU31を介さずにDRAM(51a,51b等)を用いてデータの送受信を行うプロセス(「DMAプロセス」とも称する)も存在する。
このようなMFP動作用プロセスの実行動作は、アプリケーションが当該MFP動作用プロセスをDRAM51a,51b(換言すれば、チャネルCh1,Ch2)を用いて実行すべき旨の実行指示をOSに伝達すること等によって、実現される。
なお、サーバ動作用プロセスに関しても同様にして実行指示が付与されればよい。具体的には、アプリケーションが当該サーバ動作用プロセスをDRAM51c,51d(換言すれば、チャネルCh3,Ch4)を用いて実行すべき旨の実行指示をOSに伝達すること等によって実現される。
このように、各動作モードに応じて決定されたチャネル(MFP動作用チャネル(MFP動作専用チャネル等))を利用してMFP動作が行われ、各動作モードに応じて決定されたチャネル(サーバ動作用チャネル(サーバ動作専用チャネル等))を利用してサーバ動作が行われる。
以上のような動作によれば、画像処理機能を含む第1の機能の実行動作に要するメモリ帯域(所要帯域)が、MFP10の現在の動作モードに基づいて推定される。そして、推定された当該所要帯域に基づいて、MFP動作用チャネル(特に、MFP動作専用チャネル)およびサーバ動作専用チャネル(第2機能専用チャネル)が決定される。したがって、画像処理機能とサーバ機能とを並列的に実行する画像処理装置において、共用されるメモリ(DRAM51a〜51d)を有効に利用して、画像処理機能に関連する動作の遅延を抑制することが可能である。より詳細には、MFP動作専用チャネルは、サーバ動作には利用されないので、第1の機能の実行動作(MFP動作)の所要帯域をより確実に確保することが可能であり、MFP動作の所要時間およびユーザの待ち時間の増大を回避ないし抑制することが可能である。たとえば、ユーザがMFPにてコピー等の各種ジョブを実行させる場合に、当該各種ジョブの所要時間が通常よりも長くなることを回避ないし抑制することが可能である。
特に、各動作モード(特に動作モードD2〜D5)において、サーバ動作に関する負荷が増大した場合であっても、MFP動作専用チャネルはMFP動作向けに確保されたまま、サーバ動作はサーバ動作用メモリあるいは仮想メモリ等を利用して実行される。したがって、サーバ動作に関する負荷が増大した場合であってもMFP動作に及ぶ影響を抑制することが可能である。
また、MFP動作専用チャネルは、固定されておらず、現在の動作モードに応じて適宜変動する。したがって、常に同じ割合でMFP動作とサーバ動作とに複数のチャネルが分配される場合に比べて、MFP動作の多寡等をも考慮してMFP動作向けの帯域をより適切に確保することが可能である。
特に、動作モードに応じて推定された所要帯域(MFP動作の所要帯域)が大きくなるにつれて、MFP動作専用チャネル(より詳細には、その帯域)が拡大されているので、MFP動作向けの帯域をより適切に確保することが可能である。
また、上記実施形態においては、MFP動作専用チャネルが、MFP動作に関する新たなジョブの実行開始前に決定されているので、当該新たなジョブの実行にあたって適切な帯域が(早い段階で)予め確保され得る。
なお、上記態様においては、一部の動作モード(具体的には、「動作モード1」)ではMFP動作専用チャネルは決定されていない。このように、MFP動作専用チャネルは必ずしも常に決定されることを要しない。しかしながら、これに限定されず、動作モードに依らず全ての動作モードで常にMFP動作専用チャネルが決定されるようにしてもよい。たとえば、動作モード1では、動作モード2と同様のMFP動作専用チャネル(およびサーバ動作専用チャネル)が決定されてもよい。
<2.第2実施形態>
上記第1実施形態においては、MFP10の現在の動作モードに応じてMFP動作の所要帯域が推定される態様が例示されている。
この第2実施形態では、MFP10に対するユーザの操作状況に基づいてMFP動作の所要帯域が推定される態様を例示する。
図8は、第2実施形態に係る動作を示すフローチャートである。
図8に示すように、ステップS11bでは、所定のユーザ操作状況(図9参照)が検出されたか否かが判定される。そして、ステップS12では、検出されたユーザ操作状況に基づいてMFP動作の所要帯域が推定されるとともに、その推定結果に基づいてメモリ帯域の確保動作等が行われる。なお、第2実施形態は、第1実施形態の変形例であり、以下では、第1実施形態との相違点を中心に説明する。
図9は、ユーザの操作状況と当該操作状況に対して推定される所要帯域との関係を示す図である。図9に示すように、第2実施形態においては、動作モードに代えてユーザの操作状況に基づき、現在あるいは近い将来(所定時間(たとえば数秒〜数十秒)経過後)のMFP動作の所要帯域が推定される。
たとえば、「ユーザがMFP10に接近してMFP10の前に立っている(且つ未だパネル操作を開始していない)」旨のユーザ操作状況(「ユーザ近接」)が検出されると、MFP10は、MFP10のパネル操作がユーザによって開始される可能性が高いと判定する。なお、ユーザの接近等は、MFP10に設けられた接近検出センサ等によって検出されればよい。
「ユーザ近接」が検出されると、MFP10は、パネル操作が行われる可能性が高いと判定する。そして、MFP10は、パネル操作(操作パネル部6cのハードウエアキーおよび/または(タッチパネル25内の)ソフトウエアキーを用いた各種の操作)を伴う動作(設定動作およびブラウザ動作等を含む)にて最も大きな帯域の動作である「ブラウザでの動画ストリーミング動作」に要する帯域(所要帯域)を求める。たとえば、「ブラウザでの動画ストリーミング動作」の所要帯域が、0.5GB/sとして算出される。そして、当該値(0.5GB/s)がMFP動作の現在あるいは近い将来の「所要帯域」として推定され、当該所要帯域を確保するためのチャネルがMFP動作に割り当てられる。より具体的には、当該所要帯域よりも大きな帯域(合計帯域)を有するように、N個のチャネル(1GB/s単位)がMFP動作に割り当てられる。たとえば、0.5GB/sよりも大きな帯域(1GB/s)を有する1個のチャネルCh1(DRAM51aに対応付けられたチャネル)がMFP動作に割り当てられる。換言すれば、チャネルCh1がMFP動作専用チャネル(第1機能専用チャネル)として決定される。また、複数のチャネルのうち残余のチャネルCh1〜Ch3がサーバ動作専用チャネル(第2機能専用チャネル)として決定される。
さらに、「ユーザがパネル操作を開始し且つコピー設定画面を選択した」旨のユーザ操作状況(「コピー操作開始」)が検出されると、MFP10は、コピー動作(スキャン動作とプリント動作とを伴う画像処理動作等)が開始される可能性が高いと判定する。「コピー操作開始」が検出されると、MFP10は、次に実行される可能性が高い「コピー動作」における所要帯域(予め算出された最大帯域等)(たとえば、2.5GB/s)を求める。コピー操作開始が検出された場合、ここでは、コピージョブで利用され得る最大帯域(具体的には、「同時両面読込且つフルカラーコピー」の設定時の最大帯域(たとえば、2.5GB/s))(固定値)が、MFP動作の現在あるいは近い将来の「所要帯域」として推定される。そして、当該所要帯域よりも大きな帯域(合計帯域)を有するようにN個のチャネル(1GB/s単位)がMFP動作に割り当てられる。たとえば、2.5GB/sよりも大きな帯域(3GB/s)を有する3個のチャネルCh1,Ch2,Ch3(DRAM51a,51b,51cに対応付けられたチャネル)がMFP動作に割り当てられる。換言すれば、チャネルCh1,Ch2,Ch3がMFP動作専用チャネル(第1機能専用チャネル)として決定される。また、複数のチャネルのうち残余のチャネルCh4がサーバ動作専用チャネル(第2機能専用チャネル)として決定される。
また、「ユーザがパネル操作を開始し且つボックス保存画面を選択した」旨のユーザ操作状況(「ボックス保存操作開始」)が検出されると、MFP10は、ボックス保存動作(スキャン動作を伴う動作等)が開始される可能性が高いと判定する。「ボックス保存操作開始」が検出されると、MFP10は、次に実行される可能性が高い「ボックス保存操作開始」における所要帯域(予め算出された最大帯域等)(たとえば、2.5GB/s)を求める。ボックス保存操作開始が検出された場合、ここでは、ボックス保存ジョブで利用され得る最大帯域(具体的には、「同時両面読込且つフルカラー読込」の設定時の最大帯域(たとえば、2.5GB/s))が、MFP動作の現在あるいは近い将来の「所要帯域」として推定される。そして、当該所要帯域よりも大きな帯域(合計帯域)を有するようにN個のチャネル(1GB/s単位)がMFP動作に割り当てられる。たとえば、2.5GB/sよりも大きな帯域(3GB/s)を有するように合計3個のチャネルCh1,Ch2,Ch3(DRAM51a,51b,51cに対応付けられたチャネル)がMFP動作に割り当てられる。また、複数のチャネルのうち残余のチャネルCh4がサーバ動作専用チャネル(第2機能専用チャネル)として決定される。
また、「ユーザがパネル操作を開始し且つスキャン設定画面を選択した」旨のユーザ操作状況(「スキャン送信操作開始」)が検出されると、スキャン送信動作(スキャン動作を伴う動作等)が開始される可能性が高いと判定される。そして、上述のような推定動作および割り当て動作等が行われる。
また、「ユーザがADF(自動給紙機構)に対する操作を開始した」旨のユーザ操作状況(「ADFを用いたスキャン操作開始」)が検出されると、スキャン送信動作(スキャン動作を伴う動作等)が開始される可能性が高いと判定される。そして、上述のような推定動作および割り当て動作等が行われる。
また、「ユーザが原稿台(ガラス製原稿台)に対する操作を開始した」旨のユーザ操作状況(「原稿台を用いたスキャン操作開始」)が検出されると、スキャン送信動作(スキャン動作を伴う動作等)(ただし、片面読取動作)が開始される可能性が高いと判定される。この場合には、「片面読取動作を伴うスキャン動作」における所要帯域(予め算出された最大帯域等)(たとえば、1.3GB/s)が求められる。詳細には、片面スキャンジョブで利用され得る最大帯域(具体的には、「片面読込且つフルカラー読込」の設定時の最大帯域(たとえば、1.3GB/s))が、MFP動作の現在あるいは近い将来の「所要帯域」として算出される。そして、当該所要帯域よりも大きな帯域(合計帯域)を有するようにN個のチャネル(1GB/s単位)がMFP動作に割り当てられる。たとえば、1.3GB/sよりも大きな帯域(2GB/s)を有するように合計2個のチャネルCh1,Ch2(DRAM51a,51bに対応付けられたチャネル)がMFP動作に割り当てられる。また、複数のチャネルのうち残余のチャネルCh3,Ch4がサーバ動作専用チャネル(第2機能専用チャネル)として決定される。
また、「遠隔操作装置(スマートフォン等)を用いた遠隔操作のためにユーザがMFP10への接続操作(リモート接続操作)を開始した」旨のユーザ操作状況(「リモート操作開始」)が検出されると、ボックスデータの配信動作(ボックスに保存されたデータの転送動作等)が開始される可能性が高いと判定される。この場合には、「ボックスデータの配信動作」における所要帯域(予め算出された最大帯域等)が求められる。そして、当該所要帯域(MFP動作の現在あるいは近い将来の所要帯域)よりも大きな帯域(合計帯域)を有するようにN個のチャネルがMFP動作に割り当てられる。また、複数のチャネルのうち残余のチャネルがサーバ動作専用チャネル(第2機能専用チャネル)として決定される。
また、「ユーザがネットワーク経由でMFP10へのプリント依頼を開始した」旨のユーザ操作状況(「ネットワークプリント操作開始」)が検出されると、プリント出力動作(ネットワークを介して受信されたデータに関する印刷出力動作等)が開始される可能性が高いと判定する。具体的には、ユーザのクライアントコンピュータからMFP10に対するプリント要求がMFP10にて受信されると、「ネットワークプリント操作開始」が検出される。この場合には、「プリント動作」における所要帯域(予め算出された最大帯域等)が求められる。ネットワークプリント操作開始が検出された場合、ネットワークプリントジョブで利用され得る最大帯域(具体的には、「フルカラープリント且つ高画質出力(1200dpi出力)」の設定時の最大帯域(たとえば、1.5GB/s))が、MFP動作の現在あるいは近い将来の「所要帯域」として算出される。そして、当該所要帯域よりも大きな帯域(合計帯域)を有するようにN個のチャネルがMFP動作に割り当てられる。換言すれば、当該N個のチャネルがMFP動作専用チャネル(第1機能専用チャネル)として決定される。また、複数のチャネルのうち残余のチャネルがサーバ動作専用チャネル(第2機能専用チャネル)として決定される。
以上のような動作によれば、画像処理機能を含む第1の機能の実行動作に要するメモリ帯域(所要帯域)が、MFP10に対するユーザの操作状況に基づいて推定される。そして、推定された当該所要帯域に基づいて、MFP動作用チャネル(特に、MFP動作専用チャネル)およびサーバ動作専用チャネル(第2機能専用チャネル)が決定される。したがって、画像処理機能とサーバ機能とを並列的に実行する画像処理装置において、共用されるメモリ(DRAM51a〜51d)を有効に利用して、画像処理機能に関連する動作の遅延を抑制することが可能である。より詳細には、第1の機能の実行動作(MFP動作)の所要帯域をより確実に確保することが可能であり、MFP動作の所要時間およびユーザの待ち時間の増大を回避ないし抑制することが可能である。たとえば、ユーザがMFPにてコピー等の各種ジョブを実行させる場合に、当該各種ジョブの所要時間が通常よりも長くなることを回避ないし抑制することが可能である。
<第2実施形態に係る変形例>
ここにおいて、コピー動作、スキャン動作、プリント動作のそれぞれにおける所要帯域は、上述のように固定値(設定内容に依拠しない一定値)として予め決定されていてもよいが、次述するように各動作に関する設定内容(設定値)に基づいて算出(推定)されるようにしてもよい。
たとえば、コピー動作(コピージョブ)に関しては、図10に示すような各種の設定内容(詳細には、「原稿のサイズと向き」、「出力用紙のサイズと向き」、「倍率」、「カラーモード」、「原稿モード」の各設定値(要素))に基づいて、所要帯域が算出されるようにしてもよい。
具体的には、「原稿モード」が「文字」、「地図」、「写真」のいずれであるかによって、画像の圧縮率が異なるため、生成される画像のデータサイズも異なる。「文字」が設定されている場合には、「地図」あるいは「写真」が設定されている場合よりも画像のデータサイズは小さく、所要帯域も比較的小さくて済む。一方、「写真」が設定されている場合には、「地図」あるいは「文字」が設定されている場合よりも画像のデータサイズは大きく、所要帯域も比較的大きい。
また、「カラーモード」が「フルカラー」、「モノクロ」のいずれであるかによって、生成される画像のデータサイズも異なる。「フルカラー」が設定されている場合には、「モノクロ」が設定されている場合よりも画像のデータサイズは大きく、所要帯域も比較的大きい。
また、「原稿のサイズ」および「出力用紙のサイズ」に依拠して、生成される画像のデータサイズが異なる。そのため、これらの要素に依拠して所要帯域が変動する。また、「原稿の向き」と「出力用紙の向き」とにも依拠して所要帯域が変動する。たとえば、原稿が「A4サイズ/横向き」であり且つ出力用紙が「A4サイズ/縦向き」である場合(端的に言えば、横向きから縦向きへの「回転」を伴う場合)には、「回転」を伴わない場合よりも比較的大きな帯域を要する。
また、「倍率」が、「等倍」、「0.7倍(縮小)」、「1.4倍(拡大)」のいずれであるか等にも依拠して、所要帯域が変動する。
詳細には、これら種々の要素に応じた変動を反映した所定の計算式等に基づいて、所要帯域が算出されればよい。
同様に、スキャン動作(スキャンジョブ)に関しては、図10に示すような各種の設定内容(詳細には、「原稿のサイズと向き」、「送信サイズと向き」、「解像度」、「カラーモード」、「送信フォーマット」の各設定値(要素))に基づいて、所要帯域が算出されるようにしてもよい。。たとえば、「解像度」が、「600dpi」、「300dpi」のいずれであるかにも依拠して、所要帯域が変動する。また、「送信フォーマット」(送信対象ファイルのフォーマット)が、「RAW」、「JPEG」、「PDF」のいずれであるかにも依拠して、所要帯域が変動する。
同様に、プリント動作(プリントジョブ)に関しては、図10に示すような各種の設定内容(詳細には、「原稿のサイズと向き」、「出力用紙のサイズと向き」、「解像度」、「カラーモード」、「画像品質」の各設定値(要素))に基づいて、所要帯域が算出されるようにしてもよい。たとえば、「解像度」が、「1200dpi」、「600dpi」のいずれであるかにも依拠して、所要帯域が変動する。また、「画像品質」が、「高」、「中」、「低」のいずれであるかにも依拠して、所要帯域が変動する。
コピージョブおよびスキャンジョブに関しては、各ジョブの実行に際して、それぞれの設定操作時点(コピー設定操作時点およびスキャン設定操作時点)において、各ジョブ実行用の所要帯域が各ジョブの設定内容に基づき算出されてMFP動作専用チャネルが決定される。そして、以後の動作、具体的には、各ジョブ実行時(当該各ジョブの画像処理実行時)の動作にて、MFP動作専用チャネルが用いられればよい。
また、プリント動作(プリントジョブ)の実行に際しては、当該プリントジョブに関する設定情報の受信時点(当該設定情報を含むプリント要求の受信時点)において、プリントジョブ実行用の所要帯域が当該設定情報に基づき算出されて、MFP動作専用チャネルが決定される。そして、以後の動作、具体的には、当該プリントジョブ実行時(PDLで記述されたプリントデータの受信処理およびプリントジョブに関する画像処理実行時)の動作にて、MFP動作専用チャネルが用いられればよい。
以上のような態様によれば、各ジョブに関する設定内容(設定値)に基づいてMFP動作の所要帯域が算出されるので、MFP動作の所要帯域がより適切に求められ、ひいてはMFP専用チャネルがより適切に決定される。
<3.第3実施形態>
第3実施形態は、第2実施形態の変形例である。以下では、第2実施形態との相違点を中心に説明する。
上記第2実施形態では、圧縮率が所定の基準値であることを前提としている。これに対して、この第3実施形態では、第2実施形態と同様の推定動作および決定動作が行われた後において、処理対象画像に関する実際の圧縮率が求められ、当該実際の圧縮率に基づいてMFP動作の所要帯域が再び推定される。そして、再推定後の所要帯域に基づいてMFP動作専用チャネル等が再決定される。ここにおいて、MFP動作における所要帯域は画像の圧縮率に大きく依存する。第3実施形態では、実際の処理対象画像の実際の圧縮率に基づいて、MFP動作の所要帯域が再び推定されるので、MFP動作専用チャネル等がより適切に決定され得る。
具体的には、第3実施形態では、処理対象画像に関する実際の処理結果が求められ(ここでは画像圧縮処理で圧縮されたデータの実際の圧縮率が算出され)、当該処理結果(ここでは当該実際の圧縮率)に基づき所要帯域が修正される。
そして、修正後の所要帯域よりも大きな帯域(合計帯域)を有し且つ1単位量(ここでは1GB/s)以内の差異を有するように、N個のチャネル(1GB/s単位)がMFP動作に割り当てられる。その結果、所要帯域の修正前後で大きく変更される場合等においては、値Nが変更される。そして、値Nの変更に伴って、MFP動作に割り当てられるチャネルが変更される。
たとえば、修正前の所要帯域が「2.3GB/s」であり且つ値Nが「3」に定められていた場合において、修正前の所要帯域が「1.8GB/s」に変更され且つ値Nが「2」に変更されると、MFP動作に割り当てられるチャネルが変更される。具体的には、このような変更が行われると、MFP動作専用チャネルは、3つのチャネルCh1,Ch2,Ch3から、2つのチャネルCh1,Ch2へと変更される。換言すれば、3つのDRAM51a,51b,51cに対応付けられた3つのチャネルから、2つのDRAM51a,51bに対応付けられた2つのチャネルへと変更される。
より詳細には、たとえば、コピー動作(コピージョブ)においては、スキャン画像入力処理、圧縮処理、伸長処理、出力処理等が並列的に実行される。
図11は、コピー動作におけるメモリアクセスに関する処理(並列処理)を模式的に示す図である。なお、図3では、画像処理回路43およびDMAコントローラ41は、それぞれ1つずつ描画されているが、実際には複数の画像処理回路43および複数のDMAコントローラ41が存在する。図11では、そのような構成が示されている。具体的には、スキャン入力処理を実行する画像処理回路43e、印刷出力用の画像処理を実行する画像処理回路43f、画像圧縮処理を実行する画像処理回路(圧縮回路)43a、および画像伸長処理を実行する画像処理回路(伸長回路)43c等がコントローラ9のSoC内に設けられている。また、画像処理回路43eからの出力データを制御するDMAコントローラ41e、および画像処理回路43fへの入力データを制御するDMAコントローラ41fが設けられている。また、画像処理回路43aに対する入力データおよび出力データをそれぞれ制御するDMAコントローラ41a,41b、および画像処理回路43cに対する入力データおよび出力データをそれぞれ制御するDMAコントローラ41c,41d等がさらに設けられている。
画像読取部(スキャナ部)2(図1参照)および画像処理回路43eによって入力画像(スキャン画像)が生成されると、画像処理回路43eは当該入力画像の種類(「文字」、「地図」、「写真」)を判別する。当該入力画像の種類に関する判別結果は、CPU31等によって取得される。また、生成された入力画像(スキャン画像)のデータは、DMAコントローラ41e,41aを介して、画像処理回路(圧縮回路)43aに入力される。そして、画像処理回路(圧縮回路)43aによる圧縮処理後のデータは、DMAコントローラ41bおよびDRAMコントローラ36を介して、MFP動作に割り当てられたDRAM51(たとえば、51a〜51c)に一旦格納される。スキャン画像に対する圧縮処理結果は、CPU31等によって取得される。
また、コピー動作等における印刷出力に際しては、DRAM51に一旦格納されたスキャン画像が、DMAコントローラ41cおよびDRAMコントローラ36を介して、画像処理回路(伸長回路)43cに入力される。そして、画像処理回路(伸長回路)43cによる伸長処理後のデータは、DMAコントローラ41dおよびDRAMコントローラ36を介して、DRAM51に再び格納される。さらに、当該伸長処理後のデータは、DMAコントローラ41fおよびDRAMコントローラ36を介して、DRAM51から読み出されて画像処理回路43fに入力される。そして、当該データを用いて画像処理回路43fおよび印刷出力部3(図1参照)による印刷出力が行われる。
これらの処理(スキャン画像入力処理、圧縮処理、伸長処理、および出力処理)は並列的に実行され得る。特に、画像処理回路(伸長回路)43cによる伸長処理と画像処理回路43fによる出力処理とは並列的に実行され得る。
ここにおいて、実際の圧縮処理結果に係る圧縮後のデータ量は、最初の推定に基づく基本データ量(予定されていた圧縮後のデータ量)に対して変動する(特に小さくなる)ことがある。
たとえば、最初に所要帯域(1.5GB/s)が推定された際の想定によればスキャン画像が80MBのデータ量に圧縮される予定である場合(たとえば、想定圧縮率が80%である場合)において、実際の圧縮後のデータ量が20MBである(たとえば、実際の圧縮率が20%である)ときには、MFP動作(コピー動作等)に関する実際の所要帯域は減少する。より詳細には、たとえば伸長処理と出力処理とが並列的に実行される場合には、伸長処理に要する帯域は約20/80(=25%)で済むため、伸長処理と出力処理とに要する合計所要帯域(圧縮処理後の実際のデータ量を考慮した実際の所要帯域)も小さくなる(たとえば、63%程度に低減される)。元の所要帯域が1.5GB/sである場合には、圧縮処理後の実際のデータ量を考慮した所要帯域は、たとえば、0.95GB/sに低減する。第2実施形態と同様にして元の所要帯域(1.5GB/s)に対応して2つのチャネルCh1,Ch2がMFP動作専用チャネルとして決定されていたときには、更新後の所要帯域(1.0GB/s)に対応して1つのチャネルCh1のみがMFP動作専用チャネルとして再決定される。端的に言えば、チャネルCh2は、MFP動作による(実質的な)独占から解放される。なお、逆に、サーバ動作専用チャネルは、2つのチャネルCh1,Ch2から3つのチャネルCh1,Ch2,Ch3へと変更される。すなわち、比較的大きな帯域がサーバ動作に割り当てられるように割り当て内容が変更される。
このように、所要帯域を最初に推定した後において、MFP動作における画像処理に含まれる画像圧縮処理での圧縮率の想定値に対する実際値の割合(たとえば、20/80)に基づいて所要帯域を再び推定(計算)し、再推定後の所要帯域に基づいてMFP動作用チャネルおよびサーバ動作用チャネル(MFP動作専用チャネルおよびサーバ動作専用チャネル等)が再決定される。
再決定後においては、当該再決定されたチャネルに基づく動作(より詳細には、伸長処理と印刷出力処理とを含む残余のコピー動作)が行われればよい。
これによれば、画像圧縮処理における圧縮率の実際の値に基づいて、MFP動作用チャネル(特にMFP動作専用チャネル)が再決定されるので、実際の圧縮率を反映して、MFP動作への割り付けチャネルを適切に変動させることができる。換言すれば、MFP動作とサーバ動作との間でのメモリ帯域の割り当てバランスを良好に変更することが可能である。
なお、ここでは示していないが、プリントデータを受信する画像処理回路43g(不図示)等もコントローラ9内(SoC内)に設けられている。そして、プリント動作においては、プリントデータ受信処理、圧縮処理、伸長処理、出力処理等が並列的に実行される。プリント動作等においても、上記と同様にして、実際の圧縮率に基づいて、MFP動作用チャネル(特にMFP動作専用チャネル)等が再決定されればよい。
<4.第4実施形態>
第4実施形態は、第3実施形態の変形例である。以下では、第3実施形態との相違点を中心に説明する。
上記第3実施形態では、処理対象画像に関する実際の圧縮率が求められ、当該実際の圧縮率に基づいてMDP動作の所要帯域が再推定されている。
この第4実施形態では、処理対象画像の画像種類判別結果(「文字」、「地図」、「写真」)を求め、当該判別結果に基づき圧縮率を推定し、推定された圧縮率に基づいてMDP動作の所要帯域が再推定される。
ここにおいて、スキャン画像が「文字」画像(文字の多いビジネス文書等)である場合には、比較的高い圧縮率を実現することが可能である。一方、スキャン画像が「写真」画像である場合には、当該スキャン画像の圧縮率は比較的低い値に止まる。このような性質を利用して、第4実施形態では、処理対象画像に関する画像種類の判別結果に基づいて、MFP動作に関する所要帯域が再推定される。
この第4実施形態では、処理対象画像に関する処理結果(具体的には、処理対象画像の種類判別結果)を実際に求め、当該処理結果(判別結果)に基づき所要帯域が修正される。以後は、第3実施形態と同様の動作が実行される。
上述のように、実際の圧縮処理結果に係る圧縮後のデータ量は、最初の推定に基づく基本データ量(予定されていた圧縮後のデータ量)よりも変動する(特に小さくなる)ことがある。
たとえば、処理対象画像が「写真」画像であること、換言すれば、圧縮の程度が比較的低い圧縮率(比較的大きな値)(たとえば、80%)であること、を前提に所要帯域(1.5GB/s)が求められていた場合を想定する。この場合に、実際の処理対象画像が「文字」画像である旨が判別結果として得られると、圧縮の程度が比較的高い圧縮率(比較的小さな値)(たとえば、20%)での圧縮が実現できる可能性が高い。その場合、第3実施形態と同様に、たとえば、伸長処理と他の処理(出力処理等)とに要する合計所要帯域(圧縮処理後の実際のデータ量を考慮した実際の所要帯域)は減少する。
このような性質を利用して、この第4実施形態では、所要帯域を最初に推定した後において、MFP動作における画像処理に含まれる画像種類判別処理での判別結果に基づき所要帯域が再び推定される。そして、再推定後の所要帯域に基づいてMFP動作用チャネルおよびサーバ動作用チャネル(MFP動作専用チャネルおよびサーバ動作専用チャネル等)が再び決定される。
これによれば、画像判別処理での実際の判別結果に基づいて、MFP動作用チャネル(特にMFP動作専用チャネル)が再決定されるので、実際の画像の種類を反映して、MFP動作への割り付けチャネルを適切に変動させることができる。換言すれば、MFP動作とサーバ動作との間でのメモリ帯域の割り当てバランスを良好に変更することが可能である。
<5.変形例等>
以上、この発明の実施の形態について説明したが、この発明は上記説明した内容のものに限定されるものではない。
たとえば、上記各実施形態においては、複数のCPUコアが複数のメモリ(DRAM51)を共有する態様が例示されているが、これに限定されず、単一のCPUコアが複数のメモリ(DRAM51等)を共有する場合に上記の思想が適用されるようにしてもよい。
また、上記第2実施形態においては、ユーザの操作状況に基づいて直接的に所要帯域が推定されているが、これに限定されない。たとえば、ユーザの操作状況に基づいて動作モード(現在もしくは近い将来の動作モード)が一旦判定された後、当該動作モードに基づいて所要帯域が推定されるようにしてもよい。そして、第1実施形態と同様に、推定された所要帯域に基づいてMFP動作用チャネルおよびサーバ動作用チャネルが決定されるようにしてもよい(図4参照)。
たとえば、「ユーザ近接」が検出されると、動作モードD2(図4)に遷移した旨が判定され、動作モードD2に対応する所要帯域が推定されるようにしてもよい。
また、「ネットワークプリント操作開始」のユーザ操作状況が検出されると、動作モードD3に遷移した旨が判定され、動作モードD3に対応する所要帯域が推定されるようにしてもよい。
また、「コピー操作開始」のユーザ操作状況が検出されると、動作モードD4に遷移した旨が判定され、動作モードD4に対応する所要帯域が推定されるようにしてもよい。また、「スキャン送信操作開始」、「ADFを用いたスキャン操作開始」、あるいは「原稿台を用いたスキャン操作開始」のユーザ操作状況が検出されると、動作モードD4に遷移した旨が判定され、動作モードD4に対応する所要帯域が推定されるようにしてもよい。
また、プリントデータ受信中にコピー操作開始のユーザ操作状況が検出されると、動作モードD5に遷移した旨が判定され、動作モードD5に対応する所要帯域が推定されるようにしてもよい。
また、上記第3および第4実施形態は、第2実施形態との組合せに係る態様として説明しているが、これに限定されない。たとえば、上記第3および第4実施形態は、それぞれ第1実施形態との組合せに係る態様として実現されるようにしてもよい。具体的には、第1実施形態と同様にして動作モードに基づいてMFP動作専用チャネル等が決定された後に、第3実施形態あるいは第4実施形態と同様にして、所要帯域の再推定値に基づいてMFP動作専用チャネル等が再決定されるようにしてもよい。
10 MFP
25 タッチパネル
31 CPU
31a〜31d CPUコア
36 DRAMコントローラ
41 DMAコントローラ
43 画像処理回路
51,51a,51b,51c,51d DRAM
Ch1,Ch2,Ch3,Ch4 チャネル

Claims (22)

  1. 画像処理装置であって、
    複数のメモリと、
    画像処理機能を含む第1の機能の実行動作とサーバ機能を含む第2の機能の実行動作とを前記複数のメモリを利用して制御する制御手段と、
    を備え、
    前記画像処理装置は、複数の動作モードを有しており、
    前記制御手段は、
    前記複数の動作モードのうちの前記画像処理装置の現在の動作モードに基づいて、前記第1の機能の実行動作に要するメモリ帯域である所要帯域を推定するとともに、
    前記複数のメモリにアクセスするための複数のチャネルのうち、前記第1の機能の実行動作に使用することが可能なチャネルであって前記第2の機能の実行動作には使用することが不可能なチャネルである第1機能向け帯域確保用チャネルを、前記所要帯域に基づいて決定することを特徴とする画像処理装置。
  2. 請求項1に記載の画像処理装置において、
    前記制御手段は、前記所要帯域に関する複数の段階に応じて、前記複数のチャネルのうち前記第1の機能の実行動作に使用することが可能なチャネルを変更することを特徴とする画像処理装置。
  3. 請求項2に記載の画像処理装置において、
    前記制御手段は、前記所要帯域に関する前記複数の段階のうち少なくとも1つの段階において、前記第1機能向け帯域確保用チャネルを前記複数のチャネルの中から決定することを特徴とする画像処理装置。
  4. 請求項3に記載の画像処理装置において、
    前記制御手段は、
    前記所要帯域に関する前記複数の段階のうち2以上の段階において、前記第1機能向け帯域確保用チャネルを前記複数のチャネルの中から決定するとともに、
    前記所要帯域が大きくなるにつれて前記第1機能向け帯域確保用チャネルを拡大することを特徴とする画像処理装置。
  5. 請求項1から請求項4のいずれかに記載の画像処理装置において、
    前記制御手段は、前記第1機能向け帯域確保用チャネルを、前記第1の機能に関する新たなジョブの実行開始前に決定することを特徴とする画像処理装置。
  6. 請求項1から請求項5のいずれかに記載の画像処理装置において、
    前記制御手段は、前記所要帯域の推定後において、前記画像処理機能に関する画像圧縮処理で圧縮されたデータの実際の圧縮率に基づいて前記所要帯域を再び推定し、再推定後の前記所要帯域に基づいて前記第1機能向け帯域確保用チャネルを再決定することを特徴とする画像処理装置。
  7. 請求項1から請求項5のいずれかに記載の画像処理装置において、
    前記制御手段は、前記所要帯域の推定後において、前記画像処理機能に関する画像種類判別処理での判別結果に基づいて前記所要帯域を再び推定し、再推定後の前記所要帯域に基づいて前記第1機能向け帯域確保用チャネルを再決定することを特徴とする画像処理装置。
  8. 画像処理機能を含む第1の機能の実行動作とサーバ機能を含む第2の機能の実行動作とを複数のメモリを利用して制御する画像処理装置の制御方法であって、
    a)前記画像処理装置の複数の動作モードのうちの前記画像処理装置の現在の動作モードに基づいて、前記第1の機能の実行動作に要するメモリ帯域である所要帯域を推定するステップと、
    b)前記複数のメモリにアクセスするための複数のチャネルのうち、前記第1の機能の実行動作に使用することが可能なチャネルであって前記第2の機能の実行動作には使用することが不可能なチャネルである第1機能向け帯域確保用チャネルを、前記所要帯域に基づいて決定するステップと、
    を備えることを特徴とする、画像処理装置の制御方法。
  9. 画像処理機能を含む第1の機能の実行動作とサーバ機能を含む第2の機能の実行動作とを複数のメモリを利用して制御する画像処理装置に、
    a)前記画像処理装置の複数の動作モードのうちの前記画像処理装置の現在の動作モードに基づいて、前記第1の機能の実行動作に要するメモリ帯域である所要帯域を推定するステップと、
    b)前記複数のメモリにアクセスするための複数のチャネルのうち、前記第1の機能の実行動作に使用することが可能なチャネルであって前記第2の機能の実行動作には使用することが不可能なチャネルである第1機能向け帯域確保用チャネルを、前記所要帯域に基づいて決定するステップと、
    を実行させるためのプログラム。
  10. 画像処理装置であって、
    複数のメモリと、
    画像処理機能を含む第1の機能の実行動作とサーバ機能を含む第2の機能の実行動作とを前記複数のメモリを利用して制御する制御手段と、
    を備え、
    前記制御手段は、
    前記第1の機能の実行動作に要するメモリ帯域である所要帯域を、前記画像処理装置に対するユーザの操作状況に基づいて推定するとともに、
    前記複数のメモリにアクセスするための複数のチャネルのうち、前記第1の機能の実行動作に使用することが可能なチャネルであって前記第2の機能の実行動作には使用することが不可能なチャネルである第1機能向け帯域確保用チャネルを、前記所要帯域に基づいて決定することを特徴とする画像処理装置。
  11. 請求項10に記載の画像処理装置において、
    前記ユーザの前記操作状況は、
    前記ユーザが前記画像処理装置に接近して前記画像処理装置の前に居る状況と、
    前記ユーザが前記画像処理装置のパネル操作を開始し且つ前記パネル操作にてコピー設定画面を選択した状況と、
    前記ユーザが前記画像処理装置のパネル操作を開始し且つ前記パネル操作にてスキャン設定画面を選択した状況と、
    前記ユーザが前記画像処理装置の自動給紙機構に対する操作を開始した状況と、
    前記ユーザが前記画像処理装置の原稿台に対する操作を開始した状況と、
    前記ユーザが前記画像処理装置のパネル操作を開始し且つ前記パネル操作にてボックス保存画面を選択した状況と、
    前記ユーザが遠隔操作のために前記画像処理装置への接続を開始した状況と、
    前記ユーザがネットワーク経由で前記画像処理装置へのプリント依頼を開始した状況と、
    のいずれかを含むことを特徴とする画像処理装置。
  12. 請求項10に記載の画像処理装置において、
    前記ユーザの前記操作状況は、前記ユーザが前記画像処理装置のパネル操作を開始し且つ前記パネル操作にてコピー設定画面を選択した状況、を含むことを特徴とする画像処理装置。
  13. 請求項12に記載の画像処理装置において、
    前記制御手段は、コピージョブに関連する設定内容に基づいて前記所要帯域を推定することを特徴とする画像処理装置。
  14. 請求項10に記載の画像処理装置において、
    前記ユーザの前記操作状況は、
    前記ユーザが前記画像処理装置のパネル操作を開始し且つ前記パネル操作にてスキャン設定画面を選択した状況と、
    前記ユーザが前記画像処理装置の自動給紙機構に対する操作を開始した状況と、
    前記ユーザが前記画像処理装置の原稿台に対する操作を開始した状況と、
    のいずれかを含むことを特徴とする画像処理装置。
  15. 請求項14に記載の画像処理装置において、
    前記制御手段は、スキャンジョブに関連する設定内容に基づいて前記所要帯域を推定することを特徴とする画像処理装置。
  16. 請求項10に記載の画像処理装置において、
    前記ユーザの前記操作状況は、前記ユーザがネットワーク経由で前記画像処理装置へのプリント依頼を開始した状況、を含むことを特徴とする画像処理装置。
  17. 請求項16に記載の画像処理装置において、
    前記制御手段は、プリントジョブに関連する設定内容に基づいて前記所要帯域を推定することを特徴とする画像処理装置。
  18. 請求項12から請求項17のいずれかに記載の画像処理装置において、
    前記制御手段は、前記所要帯域の推定後において、前記画像処理機能に関する画像圧縮処理で圧縮されたデータの実際の圧縮率に基づいて前記所要帯域を再び推定し、再推定後の前記所要帯域に基づいて前記第1機能向け帯域確保用チャネルを再決定することを特徴とする画像処理装置。
  19. 請求項12から請求項17のいずれかに記載の画像処理装置において、
    前記制御手段は、前記所要帯域の推定後において、前記画像処理機能に関する画像種類判別処理での判別結果に基づいて前記所要帯域を再び推定し、再推定後の前記所要帯域に基づいて前記第1機能向け帯域確保用チャネルを再決定することを特徴とする画像処理装置。
  20. 請求項10から請求項19のいずれかに記載の画像処理装置において、
    前記制御手段は、前記第1機能向け帯域確保用チャネルを、前記第1の機能に関する新たなジョブの実行開始前に決定することを特徴とする画像処理装置。
  21. 画像処理機能を含む第1の機能の実行動作とサーバ機能を含む第2の機能の実行動作とを複数のメモリを利用して制御する画像処理装置の制御方法であって、
    a)前記第1の機能の実行動作に要するメモリ帯域である所要帯域を、前記画像処理装置に対するユーザの操作状況に基づいて推定するステップと、
    b)前記複数のメモリにアクセスするための複数のチャネルのうち、前記第1の機能の実行動作に使用することが可能なチャネルであって前記第2の機能の実行動作には使用することが不可能なチャネルである第1機能向け帯域確保用チャネルを、前記所要帯域に基づいて決定するステップと、
    を備えることを特徴とする、画像処理装置の制御方法。
  22. 画像処理機能を含む第1の機能の実行動作とサーバ機能を含む第2の機能の実行動作とを複数のメモリを利用して制御する画像処理装置に、
    a)前記第1の機能の実行動作に要するメモリ帯域である所要帯域を、前記画像処理装置に対するユーザの操作状況に基づいて推定するステップと、
    b)前記複数のメモリにアクセスするための複数のチャネルのうち、前記第1の機能の実行動作に使用することが可能なチャネルであって前記第2の機能の実行動作には使用することが不可能なチャネルである第1機能向け帯域確保用チャネルを、前記所要帯域に基づいて決定するステップと、
    を実行させるためのプログラム。
JP2016203305A 2016-10-17 2016-10-17 画像処理装置、画像処理装置の制御方法、およびプログラム Active JP6720824B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016203305A JP6720824B2 (ja) 2016-10-17 2016-10-17 画像処理装置、画像処理装置の制御方法、およびプログラム
US15/782,693 US10282318B2 (en) 2016-10-17 2017-10-12 Image processing apparatus, method of controlling image processing apparatus, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016203305A JP6720824B2 (ja) 2016-10-17 2016-10-17 画像処理装置、画像処理装置の制御方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2018067748A JP2018067748A (ja) 2018-04-26
JP6720824B2 true JP6720824B2 (ja) 2020-07-08

Family

ID=61903943

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016203305A Active JP6720824B2 (ja) 2016-10-17 2016-10-17 画像処理装置、画像処理装置の制御方法、およびプログラム

Country Status (2)

Country Link
US (1) US10282318B2 (ja)
JP (1) JP6720824B2 (ja)

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5142667A (en) * 1990-09-28 1992-08-25 Xerox Corporation Resource and memory management algorithms for electric printing and electronic reprographic systems
US7725633B2 (en) 2004-06-24 2010-05-25 Panasonic Corporation Arbitration device for arbitrating among a plurality of master devices, arbitration method, and video processing device including the arbitration device
US20090244633A1 (en) * 2008-03-31 2009-10-01 Konica Minolta Systems Laboratory, Inc. Systems and Methods for Color Data Compression
JP5213539B2 (ja) * 2008-06-19 2013-06-19 キヤノン株式会社 画像処理装置及び画像処理装置のメモリ管理方法
JP2013196321A (ja) * 2012-03-19 2013-09-30 Pfu Ltd 電子回路及び調停方法
JP2013196667A (ja) * 2012-03-23 2013-09-30 Ricoh Co Ltd 画像処理装置
JP2014044527A (ja) * 2012-08-24 2014-03-13 Canon Inc 情報処理装置及びその制御方法、並びに、そのプログラムと記憶媒体
US8848577B2 (en) * 2012-09-24 2014-09-30 Apple Inc. Bandwidth management
JP2014075002A (ja) * 2012-10-03 2014-04-24 Canon Inc 情報処理装置及びその制御方法、並びにプログラム
JP6175794B2 (ja) * 2013-02-19 2017-08-09 株式会社リコー データ処理装置およびデータ処理方法
JP2015128207A (ja) * 2013-12-27 2015-07-09 株式会社リコー 画像読取装置、画像読取方法及びプログラム
JP5958490B2 (ja) * 2014-03-31 2016-08-02 コニカミノルタ株式会社 ウェブシステム、ウェブサーバ、データ配信方法、およびコンピュータプログラム
JP2016154331A (ja) * 2015-02-18 2016-08-25 株式会社リコー 情報処理システム、情報処理方法、情報処理装置、及びプログラム
US10509588B2 (en) * 2015-09-18 2019-12-17 Qualcomm Incorporated System and method for controlling memory frequency using feed-forward compression statistics

Also Published As

Publication number Publication date
US10282318B2 (en) 2019-05-07
US20180107613A1 (en) 2018-04-19
JP2018067748A (ja) 2018-04-26

Similar Documents

Publication Publication Date Title
US7929172B2 (en) Image supply device, control method of the device, and printing system
US20120137087A1 (en) Storage area management apparatus for managing storage areas provided from upper apparatuses, and control method and storage medium therefor
JP6886301B2 (ja) メモリアクセスシステム、その制御方法、プログラム、及び画像形成装置
JP6331302B2 (ja) 情報処理システム、情報取得装置、サーバ、プログラムおよび情報処理方法
US9348545B2 (en) Reducing wait time when external apparatus used for image processing
US20120268757A1 (en) Image forming apparatus and image forming method
JP2007030252A (ja) 画像形成システムおよび割り込み処理方法および印刷装置
JP2011039849A (ja) 情報処理装置及びその制御方法、並びにプログラム
JP6720824B2 (ja) 画像処理装置、画像処理装置の制御方法、およびプログラム
US8724161B2 (en) Method, apparatus, and computer program product for processing image data of plural images to combine for output to a recording medium
JP5181911B2 (ja) 画像形成装置、メモリ管理方法、及びメモリ管理プログラム
JP5232728B2 (ja) 画像形成装置
US8810814B2 (en) Image processor and image processing system
JP5233608B2 (ja) 画像形成装置、画像データ転送方法、及びプログラム
US9081523B2 (en) Non-transitory computer readable recording medium storing job transmission program for transmission of job to electronic device and electronic device executing job
JP7103167B2 (ja) 画像処理装置
JP5915670B2 (ja) 画像処理装置、同装置における画像処理方法及び画像処理プログラム
JP2000311071A (ja) 出力制御装置および出力制御方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP5414305B2 (ja) 情報処理装置、仮想記憶管理方法及びプログラム
JP7081477B2 (ja) 画像処理装置、画像処理装置の制御方法、およびプログラム
JP2011068012A (ja) 情報処理装置、その制御方法およびプログラム
JP2009038776A (ja) 画像処理装置及び画像処理方法
JP2006004382A (ja) 情報処理装置、情報処理方法、情報処理プログラムおよびコンピュータ読み取り可能な記録媒体
JP2017134604A (ja) 画像形成装置およびデータ処理プログラム
US9674381B2 (en) Electronic device including a job information generating device and access managing device, information management method to enable the electronic device to function, and a non-transitory computer-readable storage medium to store a program for the information management method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190724

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200427

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200601

R150 Certificate of patent or registration of utility model

Ref document number: 6720824

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150