(57)【要約】【課題】安価にマルチプロセッサ構成の画像処理装置を提供することを課題とする。【解決手段】複数のマザーボードそれぞれに設けられた高速シリアル通信のホスト側インターフェースと一対一に接続される高速シリアル通信の複数のファンクション側インターフェースと、画像処理を行う画像処理部と、複数のファンクション側インターフェースの間のデータ転送の調停処理、複数のファンクション側インターフェースと画像処理部との間のデータ転送の調停処理を行うデータ転送調停処理部と、を有するマルチプロセッサ構成が可能な画像処理装置により上記課題を解決する。【選択図】図２
2018019177.tif 000002
【特許請求の範囲】
【請求項１】
複数のマザーボードそれぞれに設けられた高速シリアル通信のホスト側インターフェースと一対一に接続される高速シリアル通信の複数のファンクション側インターフェースと、
画像処理を行う画像処理部と、
前記複数のファンクション側インターフェースの間のデータ転送の調停処理、前記複数のファンクション側インターフェースと前記画像処理部との間のデータ転送の調停処理を行うデータ転送調停処理部と、
を有するマルチプロセッサ構成が可能な画像処理装置。
【請求項２】
前記画像処理部が行う画像処理は、圧縮、伸長、スクリーニング処理、拡大、縮小、回転又は色空間変換であること
を特徴とする請求項１記載の画像処理装置。
【請求項３】
前記複数のマザーボードは重複しないＩＰアドレスあるいはＭＡＣアドレスの下位アドレスを決定できる情報を、ホスト側の端末装置に送信すること
を特徴とする請求項１又は２記載の画像処理装置。
【請求項４】
複数のマザーボードそれぞれに設けられた高速シリアル通信のホスト側インターフェースと一対一に接続される高速シリアル通信の複数のファンクション側インターフェースと、
前記複数のファンクション側インターフェースの間でデータ転送する際に、データの転送先ごとに前記ホスト側インターフェースがデータを書き込むエンドポイントの番号が情報として設定された設定部と、
前記複数のファンクション側インターフェースの間で相互に行うデータ転送の調停処理を行うデータ転送調停処理部と、
を有し、
前記ファンクション側インターフェースは、前記設定部に設定されている前記情報に基づき、前記エンドポイントの番号に対応した前記データの転送先にデータ転送を行うこと
を特徴とする画像処理装置。
【請求項５】
請求項１乃至４何れか一項記載の画像処理装置と、
高速シリアル通信のホスト側インターフェースが設けられた複数のマザーボードと、
を有するマルチプロセッサ構成の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像形成装置に関する。
【背景技術】
【０００２】
従来、マルチプロセッサシステムを含む画像処理装置を構成する場合は、それぞれのＣＰＵ間あるいはマザーボード間を高速なバス（例えばInfiniBandや10GbE）で接続するのが一般的である。
【０００３】
例えば各種画像データを扱い、各種の処理を行う複合機（ＭＦＰ）等の画像形成システムの内部で高速シリアルバスにより構成要素となるデバイス間を接続する技術は従来から知られている（例えば特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、マルチプロセッサシステムを含む画像処理装置を構成する場合、それぞれのＣＰＵ間あるいはマザーボード間を接続する高速なバスは、非常に高価であることが多いという問題があった。
【０００５】
本発明の一実施形態は、安価にマルチプロセッサ構成の画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の一実施形態は、複数のマザーボードそれぞれに設けられた高速シリアル通信のホスト側インターフェースと一対一に接続される高速シリアル通信の複数のファンクション側インターフェースと、画像処理を行う画像処理部と、前記複数のファンクション側インターフェースの間のデータ転送の調停処理、前記複数のファンクション側インターフェースと前記画像処理部との間のデータ転送の調停処理を行うデータ転送調停処理部と、を有するマルチプロセッサ構成が可能な画像処理装置であることを特徴とする。
【発明の効果】
【０００７】
本発明の一実施形態によれば、安価にマルチプロセッサ構成の画像処理装置を提供できる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態に係る情報処理システムの一例のシステム構成図である。
【図２】本実施形態に係る画像形成装置の一例のハードウェア構成図である。
【図３】ファンクションデバイスＩ／Ｆの一例の構成図である。
【図４】汎用マザーボード毎のＥＰに設定された一例の機能表である。
【図５】本実施形態に掛かる一例の初期化フローである。
【図６】初期化フローが終了した画像処理装置の実際の動作を示す説明図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について図面を参照しながら詳細に説明する。
【００１０】
＜システム構成＞
まず、本実施形態に係る情報処理システム１のシステム構成について説明する。図１は本実施形態に係る情報処理システムの一例のシステム構成図である。情報処理システム１は画像形成装置１０とホストＰＣ１２と含み、ＬＡＮなどのネットワーク１４を介して通信可能に接続されている。
【００１１】
ホストＰＣ１２はユーザが操作する端末装置の一例であり、画像形成装置１０に対して印刷指示を、印刷対象（例えばＰＤＦファイルなど）と共に送信する。ユーザが操作する端末装置は、スマートフォンや、タブレット端末などであってもよい。画像形成装置１０は複合機やプリンタなどの印刷機能を有する電子機器であり、ホストＰＣ１２から印刷指示と、印刷対象とを受信する。画像形成装置１０はマルチプロセッサ構成であり、マルチプロセッサにより画像処理を行う。
【００１２】
なお、図１に示した情報処理システム１の構成は一例であり、用途や目的に応じて様々なシステム構成例があることは言うまでもない。
【００１３】
＜ハードウェア構成＞
画像形成装置１０は例えば図２に示すハードウェア構成により実現される。図２は本実施形態に係る画像形成装置の一例のハードウェア構成図である。なお、図２の画像形成装置１０はマザーボード４台によるマルチプロセッサ構成の例を示している。
【００１４】
画像形成装置１０は、画像処理を行う画像処理装置１８と、４台の汎用マザーボード２０Ａ〜２０Ｄと、を有している。なお、図２では本実施形態の説明に不要な画像形成装置１０の構成を省略している。
【００１５】
画像処理装置１８は４台の汎用マザーボード２０Ａ〜２０Ｄと接続するためのファンクションデバイスＩ／Ｆ２４Ａ〜２４Ｄが設けられている。例えばファンクションデバイスＩ／Ｆ２４Ａ〜２４Ｄは、ＵＳＢ（Universal Serial Bus）３．０／３．１対応のファンクション側のＩ／Ｆである。ファンクションデバイスＩ／Ｆ２４Ａ〜２４Ｄは、高速シリアル通信のファンクション側インターフェースの一例である。
【００１６】
なお、以下では汎用マザーボード２０Ａ〜２０Ｄを汎用マザーボード２０と総称する場合がある。また、ファンクションデバイスＩ／Ｆ２４Ａ〜２４ＤをファンクションデバイスＩ／Ｆ２４と総称する場合がある。
【００１７】
それぞれの汎用マザーボード２０Ａ〜２０Ｄは、ホストＩ／Ｆ２２Ａ〜２２Ｄが設けられている。例えばホストＩ／Ｆ２２Ａ〜２２Ｄは、ＵＳＢ３．０／３．１対応のホスト側のＩ／Ｆである。ホストＩ／Ｆ２２Ａ〜２２Ｄは、高速シリアル通信のホスト側インターフェースの一例である。
【００１８】
汎用マザーボード２０Ａ〜２０ＤのホストＩ／Ｆ２２Ａ〜２２Ｄは、それぞれがケーブル３６Ａ〜３６ＤでファンクションデバイスＩ／Ｆ２４Ａ〜２４Ｄと接続される。画像処理装置１８は画像処理ボードや画像処理ボックスと呼ばれることもある。図２では汎用マザーボード２０Ａ〜２０Ｄを画像形成装置１０の内側に図示しているが、画像形成装置１０の筐体の外側にあってもよい。
【００１９】
画像処理装置１８の電源はセルフパワーでもバスパワーでもよい。図２では電源部を省略している。バスパワーの場合、例えば画像処理装置１８は必ずしも全てのケーブル３６Ａ〜３６Ｄから電源を供給される必要がないため、例えばケーブル３６Ａから電源を供給される構成であってもよい。
【００２０】
また、アービタ（Arbiter）２６はファンクションデバイスＩ／Ｆ２４、メモリ２８、ＣＰＵ３０及び画像処理ユニット３２と接続されている。アービタ２６はファンクションデバイスＩ／Ｆ２４、メモリ２８、ＣＰＵ３０、画像処理ユニット３２との間のデータ転送の調停処理を行う。
【００２１】
メモリ２８は、ＵＳＢのパケットを貯めておくバッファ、あるいは、画像処理ユニット３２のための複数ラインのデータを貯めておくバッファである。ＣＰＵ３０は全体制御用のプロセッサである。例えばＣＰＵ３０はファンクションデバイスＩ／Ｆ２４側からパケットが入ってきたら、そのパケットを目的のエンドポイント（以下、ＥＰと呼ぶ）へ送り出す制御を行う。
【００２２】
画像処理ユニット３２は、画像処理（圧縮／伸長／変換／スクリーニングなど）を行う機能ユニット群である。メンテナンス用デバイスＩ／Ｆ３４は、画像処理装置１８がメンテナンス用ＰＣと接続するためのファンクション側のＩ／Ｆである。メンテナンス用デバイスＩ／Ｆ３４は、ＣＰＵ３０により制御される。
【００２３】
ユーザは、メンテナンス用デバイスＩ／Ｆ３４と接続されたメンテナンス用ＰＣから画像処理装置１８全体のステータス内容の確認、ファームウェアバージョンアップ、メモリ内容の確認などの保守作業を行うことができる。
【００２４】
ファンクションデバイスＩ／Ｆ２４は例えば図３のように構成される。図３はファンクションデバイスＩ／Ｆの一例の構成図である。図３のファンクションデバイスＩ／Ｆ２４は物理層デバイス５０、シリアルＩ／Ｆエンジン５２、レジスタ５４、ＥＰ５６Ａ〜５６Ｈ、セレクタ５８、ＤＭＡＣ６０及び接続Ｉ／Ｆ６２を有する構成である。
【００２５】
物理層デバイス５０は、汎用マザーボード２０のホストＩ／Ｆ２２とのデータの送受信を行う。物理層デバイス５０はシリアルＩ／Ｆエンジン５２と接続されている。シリアルＩ／Ｆエンジン５２は、パケット内のＥＰ情報を元に、パケットを振り分ける動作などを行う。レジスタ５４には、割り込み要因が分かるレジスタ、ＤＭＡＣ６０の動作に関わる設定レジスタ、セレクタ５８で選択するＥＰを設定するレジスタなどがある。
【００２６】
ＥＰ５６Ａは制御用の「ＥＰ０」であり、初期化時に使用される。ＥＰ５６Ｂ〜５６Ｈは「ＥＰ１」〜「ＥＰ７」であり、汎用マザーボード２０の接続台数、画像処理ユニット３２が持つ機能数によって増減する。なお、本実施例では、汎用マザーボード２０の接続台数が「４」であり、画像処理ユニット３２が持つ機能数が「２」である例を示す。
【００２７】
セレクタ５８はデータ転送時にＥＰ５６とＤＭＡＣ６０とを接続する。ＤＭＡＣ６０はデータ送受信用ダイレクトメモリアクセスコントローラである。接続Ｉ／Ｆ６２はファンクションデバイスＩ／Ｆ２４をアービタ２６に接続するＩ／Ｆである。
【００２８】
何れかのＥＰにＯＵＴパケットが届くと、ＣＰＵ３０は割り込みが掛かる。ＣＰＵ３０はレジスタ５４を読み出し、どのファンクションデバイスＩ／Ｆ２４のどのＥＰ５６から割り込みが来たかを判断できる。本実施形態では、汎用マザーボード２０毎にＥＰの機能が図４に示すように設定されている。
【００２９】
図４は汎用マザーボード毎のＥＰに設定された一例の機能表である。図４の機能表の例では、汎用マザーボード２０ＡからファンクションデバイスＩ／Ｆ２４Ａの「ＥＰ２」に送られたデータが、そのままファンクションデバイスＩ／Ｆ２４Ｂの「ＥＰ１」に転送され、汎用マザーボード２０Ｂに送られる。
【００３０】
汎用マザーボード２０ＡからファンクションデバイスＩ／Ｆ２４Ａの「ＥＰ３」に送られたデータは、そのままファンクションデバイスＩ／Ｆ２４Ｃの「ＥＰ１」に転送されたあと、汎用マザーボード２０Ｃに送られる。汎用マザーボード２０ＡからファンクションデバイスＩ／Ｆ２４Ａの「ＥＰ４」に送られたデータは、そのままファンクションデバイスＩ／Ｆ２４Ｄの「ＥＰ１」に転送され、汎用マザーボード２０Ｄに送られる。
【００３１】
汎用マザーボード２０ＡからファンクションデバイスＩ／Ｆ２４Ａの「ＥＰ５」に送られたデータは、画像処理ユニット３２の機能ユニット（例えば圧縮機能ユニット）に送られる。画像処理ユニット３２はデータを圧縮したあと、圧縮データを汎用マザーボード２０Ｂの「ＥＰ５」に転送し、汎用マザーボード２０Ｂに送る。図４に示すように、本実施形態ではパケットの送り先がＥＰ５６を選択した時点で決定される。このようにパケットの送り先は、パケットの内容を見なくても判断できる。
【００３２】
基本的に、マルチプロセッサでボード間を接続する場合は、ネットワークのパケットであるＴＣＰ／ＩＰなどの構造をそのまま利用して行うことが多い。しかし、ＴＣＰ／ＩＰでパケットを構成し、そのパケットをＵＳＢに流すと、送り先のアドレスがパケット内に含まれることになる。このため、ＴＣＰ／ＩＰでパケットを構成し、そのパケットをＵＳＢに流す場合は、パケットを解釈して転送先を決める処理時間が掛かり、パケット転送のスループットが悪くなる。このため、本実施形態ではＥＰ５６によりパケットの送り先を決め打ちできるようにしている。
【００３３】
また、ＴＣＰ／ＩＰを使うということは「１９２．１６８．１．１００」のような形式のアドレスが必要で、かつ、ＤＨＣＰのような仕組みでＩＰアドレスをホストＰＣ１２に教えなければならない。画像処理装置１８はホストＰＣ１２に対してＤＨＰＣサーバとして動かなくてはならないが、サーバ機能を載せるとソフトウェア処理が増えてしまう。そこで本実施形態ではＵＳＢの初期化時に、ホストＰＣ１２のデバイスドライバに内部固定アドレスを渡すようにする。
【００３４】
具体的に、汎用マザーボード２０Ａは例えば下位アドレスとして「１０１」をＵＳＢのディスクリプタに含ませてホストＰＣ１２に送り返す。また、汎用マザーボード２０Ｂは例えば下位アドレスとして「１０２」をＵＳＢのディスクリプタに含ませてホストＰＣ１２に送り返す。汎用マザーボード２０Ｃは例えば下位アドレスとして「１０３」をＵＳＢのディスクリプタに含ませてホストＰＣ１２に送り返す。汎用マザーボード２０Ｄは例えば下位アドレスとして「１０４」をＵＳＢのディスクリプタに含ませてホストＰＣ１２に送り返す。
【００３５】
ホストＰＣ１２のデバイスドライバは、汎用マザーボード２０から送り返された下位アドレスからＩＰアドレス「１９２．１６８．１．１０１」と「１９２．１６８．１．１０２」と「１９２．１６８．１．１０３」と「１９２．１６８．１．１０４」とを作成することができる。ホストＰＣ１２は作成したＩＰアドレスを、それぞれの汎用マザーボード２０とのデータ転送に使用する。また、汎用マザーボード２０から送り返された下位アドレスはＭＡＣアドレスを決める場合にも利用できる。
【００３６】
図５は本実施形態に掛かる一例の初期化フローである。汎用マザーボード２０のホストＩ／Ｆ２２と画像処理装置１８のファンクションデバイスＩ／Ｆ２４とはケーブル３６で接続されている状態であるとする。
【００３７】
ステップＳ１０において、汎用マザーボード２０は電源がＯＮとなる。ステップＳ１１において、画像処理装置１８は汎用マザーボード２０Ａの電源が入ったタイミングでバスパワーにより電源が入り、内部の初期化が開始され、初期化後、ホストＩ／Ｆ２２に対して応答が可能となる。なお、図５では電源をバスパワーから取る場合を示したが、セルフパワーの場合、画像処理装置１８の電源ＯＮで起動する。
【００３８】
ホストＩ／Ｆ２２はソフトウェアが起動すると、ステップＳ１２に進む。ホストＩ／Ｆ２２のデバイスドライバはファンクションデバイスＩ／Ｆ２４の初期化のため、ファンクションデバイスＩ／Ｆ２４に情報を要求する。ファンクションデバイスＩ／Ｆ２４は要求された情報（名称、機能情報、ＩＰアドレスの下位アドレスなど）をホストＩ／Ｆ２２に返す。
【００３９】
ホストＩ／Ｆ２２のデバイスドライバはファンクションデバイスＩ／Ｆ２４から返された情報を元に、ファンクションデバイスＩ／Ｆ２４のアドレス設定、ＥＰ５６の機能設定などの初期化を行う。図５の初期化フローが終了した画像処理装置１８は例えば図６に示すように処理を行う。
【００４０】
図６は初期化フローが終了した画像処理装置の実際の動作を示す説明図である。図６では初期化フローが終了した画像処理装置１８が、汎用マザーボード２０ＡのホストＩ／Ｆ２２ＡからファンクションデバイスＩ／Ｆ２４Ａの「ＥＰ５」に画像データが送信されたものとする。
【００４１】
ファンクションデバイスＩ／Ｆ２４Ａは図４の機能表に基づき、受信した画像データを画像圧縮転送パス１０１に送り込む。画像圧縮転送パス１０１は汎用マザーボード２０ＡからファンクションデバイスＩ／Ｆ２４Ａの「ＥＰ５」に画像データを送り込み、その画像データを画像処理ユニット３２で圧縮して、汎用マザーボード２０Ｂの「ＥＰ５」に転送するパスである。
【００４２】
また、図６では、汎用マザーボード２０ＤのホストＩ／Ｆ２２ＤからファンクションデバイスＩ／Ｆ２４Ｄの「ＥＰ３」に画像データが送信されたものとする。ファンクションデバイスＩ／Ｆ２４Ｄは図４の機能表に基づき、受信したデータをデータ転送パス１０２に送り込む。データ転送パス１０２は汎用マザーボード２０ＤからファンクションデバイスＩ／Ｆ２４Ｄの「ＥＰ３」にデータを送り込み、そのデータを汎用マザーボード２０Ｃの「ＥＰ４」に転送するパスである。
【００４３】
本実施形態に掛かる画像処理装置１８は、図６に示すようにマルチプロセッサの構成をとることができる。なお、図２の画像処理ユニット３２は、ＹＭＣＫからＲＧＢへの変換のような色空間変換や拡大縮小、回転などの画像処理を行うものであってもよい。
【００４４】
例えば本実施形態に掛かる情報処理システム１では、印刷指示が印刷対象と共に、ホストＰＣ１２から画像形成装置１０の汎用マザーボード２０Ａに送信される。汎用マザーボード２０Ａは指示内容をチェックし、問題がなければＰＤＦファイルなどの印刷対象をディスプレイリストに展開して、汎用マザーボード２０ＡのＨＤＤなどに格納する。
【００４５】
その後、汎用マザーボード２０Ａは、ＨＤＤに格納したＰＤＦファイルなどの印刷対象への描画と、描画後の印刷対象の汎用マザーボード２０Ｄへの転送とを汎用マザーボード２０Ｂ及び２０Ｃに対して指示する。なお、汎用マザーボード２０Ａ〜２０Ｄは相互接続のＩ／Ｆを経由して通信を行う。
【００４６】
汎用マザーボード２０Ｂ及び２０Ｃは、汎用マザーボード２０ＡのＨＤＤから印刷対象を読み出し、描画を行う。例えば汎用マザーボード２０Ｄは実際に紙などの被搬送物に出力するためのエンジンに接続されているものとする。なお、被搬送物は、紙の他、コート紙、厚紙、ＯＨＰ、プラスチックフィルム、プリプレグ、銅箔などであってもよく、紙に限定されない。
【００４７】
また、汎用マザーボード２０Ｄは汎用マザーボード２０Ｂ及び２０Ｃから転送された描画後の印刷対象（画像データ）に対して最終的なスクリーニング処理を行ったあと、エンジンに転送する。汎用マザーボード２０Ｄはエンジン固有のスクリーニング処理を行うために、画像処理ユニット３２を使い、変換後の画像データをエンジンに送る。
【００４８】
ここで、スクリーニング処理とは、各色（例えばＹＭＣＫ）に角度を付けて、面積階調表現に変換するなどの処理を指す。レーザプリンタであれば、汎用マザーボード２０Ｄはラスター単位で変換後の画像データをエンジンに転送する。また、インクジェットプリンタであれば、汎用マザーボード２０Ｄは複数ラスターをブロック化して、ヘッド単位で変換後の画像データをエンジンに転送する。本実施形態に掛かるスクリーニング処理は上記のようなブロック化の処理を含むことができる。
【００４９】
また、汎用マザーボード２０Ｂ及び２０Ｃで描画された画像データは画像処理ユニット３２で圧縮されたあと、汎用マザーボード２０Ｄに送られてもよい。汎用マザーボード２０Ｄは圧縮された画像データを受信すると、汎用マザーボード２０ＤのＨＤＤなどに格納する。その後、汎用マザーボード２０Ｄは出力するページの順番にＨＤＤから圧縮された画像データを読み出し、伸長後、スクリーニング処理を行う。例えばスクリーニング処理は伸長と同時に行うようにしてもよい。汎用マザーボード２０Ｄはエンジンに適した画像データフォーマットで、エンジンに画像データを送信し、画像データを出力させる。
【００５０】
＜まとめ＞
本実施形態の情報処理システム１では、マルチプロセッサ構成の画像処理装置１８を以下のように構成し、安価なマルチプロセッサ構成の画像処理装置１８を実現する。本実施形態に掛かる画像形成装置１０では、汎用マザーボード２０に標準で搭載されているＵＳＢ対応のホストＩ／Ｆ２２を利用して、画像処理装置１８と接続することで、マルチプロセッサ構成をとることを特徴とする。また、本実施形態に掛かる画像形成装置１０では画像処理装置１８の画像処理ユニット３２で画像処理を行うことを特徴とする。
【００５１】
このような特徴により本実施形態では、例えばInfiniBandや10GbEなどの高価なバスを使用することなく安価にマルチプロセッサ構成の画像形成装置１０を実現できる。
【００５２】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。なお、画像処理ユニット３２は特許請求の範囲に記載した画像処理部の一例である。アービタ２６はデータ転送調停処理部の一例である。
【符号の説明】
【００５３】
１    情報処理システム
１０    画像形成装置
１２    ホストＰＣ
１４    ネットワーク
１８    画像処理装置
２０、２０Ａ〜２０Ｄ    汎用マザーボード
２２、２２Ａ〜２２Ｄ    ホストＩ／Ｆ
２４、２４Ａ〜２４Ｄ    ファンクションデバイスＩ／Ｆ
２６    アービタ
２８    メモリ
３０    ＣＰＵ
３２    画像処理ユニット
３４    メンテナンス用デバイスＩ／Ｆ
５０    物理層デバイス
５２    シリアルＩ／Ｆエンジン
５４    レジスタ
５６、５６Ａ〜５６Ｈ  エンドポイント
５８    セレクタ
６０    ＤＭＡＣ
６２    接続Ｉ／Ｆ
【先行技術文献】
【特許文献】
【００５４】
【特許文献１】特開２０１３−３７７００号公報
【図１】
2018019177.tif 000003
【図２】
2018019177.tif 000004
【図３】
2018019177.tif 000005
【図４】
2018019177.tif 000006
【図５】
2018019177.tif 000007
【図６】
2018019177.tif 000008