(57)【要約】【課題】バス帯域幅を向上させることなくマルチ動作を保証することを可能にする。【解決手段】許可時間帯設定部６４は、プリントとスキャンの機能を並列実行していれば、レジスタ６５及び６６にそれぞれＴ１及びＴ２を設定し、コピーとスキャンの機能を並列実行していれば、レジスタ６５及び６６にそれぞれ、Ｔ１／（Ｔ１＋Ｔ２）＞Ｔ３／（Ｔ３＋Ｔ４）なるＴ３及びＴ４を設定する。セレクタ７０は、前者の場合、Ｔ１、Ｔ２の交互の許可時間帯で、後者の場合、Ｔ３、Ｔ４の交互の許可時間帯で、第１グループバス要求情報ＰＲＱ、第２グループバス要求情報ＳＲＱを選択し、バス許可情報ＲＱＤ（バッファメモリ間転送ＩＤ及び転送サイズ）として出力する。【選択図】図６
2014107585.tif 000002
【特許請求の範囲】
【請求項１】
プリントエンジンと、
スキャナと、
プロセッサと、バスと、該バスに結合されそれぞれバッファメモリを備えた複数のモジュールと、該複数のモジュールからのバス要求に応答していずれか１つにバス使用を許可する調停回路とを備え、該複数のモジュールは、該プロセッサのコプロセッサとして機能する複数の印刷用ＡＳＩＣモジュールと、該プロセッサのコプロセッサとして機能する複数のスキャナ用ＡＳＩＣモジュールと、該プロセッサに結合され該プロセッサと該バスとの間の転送バッファとして機能するプロセッサインターフェイスモジュールとを含み、該プロセッサインターフェイスモジュールと該プリントエンジンとの間の転送バッファとして機能するプリントエンジンインターフェイスモジュールを該複数の印刷用ＡＳＩＣモジュールの１つとして含み、該スキャナと該複数のスキャナ用ＡＳＩＣモジュールのうちの１つの画像処理モジュールとの間の転送バッファとして機能するスキャナインターフェイスモジュールを該複数のスキャナ用ＡＳＩＣモジュールとして含む画像処理装置と、
指示入力手段と、
メインコントローラと、
を備え、該メインコントローラは、該指示入力手段からの指示入力に応じてプリント機能、コピー機能又は画像スキャン機能を実行させ、この際、該画像処理装置は、実行対象の機能に応じて該複数の印刷用ＡＳＩＣモジュール又は該複数のスキャナ用ＡＳＩＣモジュールを動作させ、該バス調停回路は、該複数のモジュールのうちの２モジュールの一方から他方へのバッファメモリ間データ転送について設定された優先度に基づいて、許可対象のデータ転送を決定する画像形成装置において、
該プリント機能と該画像スキャン機能とを並列実行させる第１マルチ動作の場合と、該コピー機能と該画像スキャン機能とを並列実行させる第２マルチ動作の場合とのそれぞれについて予め、該プロセッサインターフェイスモジュールと該複数の印刷用ＡＳＩＣモジュールとの第１グループと、該プロセッサインターフェイスモジュールと該複数のスキャナ用ＡＳＩＣモジュールとの第２グループとにそれぞれバッファメモリ間データ転送のバス要求を許可する許可時間帯が割り当てられており、
該バス調停回路は、該第１又は第２のマルチ動作の場合、該第１グループの許可時間帯と該第２グループの許可時間帯とを交互に割り当て、該第１グループの許可時間帯においては該第１グループのバッファメモリ間データ転送のバス要求を許可し、該第２グループの許可時間帯においては該第２グループのバッファメモリ間データ転送のバス要求を許可し、
該許可時間帯は、該第１のマルチ動作の場合には該第２のマルチ動作の場合よりも（該第１グループの許可時間帯）／（該第２グループの許可時間帯）の値が大きくなるように定められていることを特徴とする画像形成装置。
【請求項２】
該調停回路は、優先度毎のバス要求キューを備え、バッファメモリ間データ転送中を示すバスビジー信号が非活性に遷移したことに応答して、バス要求情報が含まれているバス要求キューのうち最も高い優先度の高いバス要求キューから次のバス要求情報を取り出してバス要求を許可することを特徴とする請求項１に記載の画像形成装置。
【請求項３】
該バス要求情報は、どのモジュールのバッファメモリからどのモジュールのバッファメモリへのデータ転送であるかを識別するバッファメモリ間転送ＩＤと、転送サイズとの情報を含むことを特徴とする請求項２に記載の画像形成装置。
【請求項４】
該バスにはさらにＤＭＡＣモジュールが結合され、
該ＤＭＡＣモジュールは、該調停回路により許可されたバス要求情報に基づいてバッファメモリ間転送をバースト転送モードで実行する、
ことを特徴とする請求項３に記載の画像形成装置。
【請求項５】
該調停回路は、バッファメモリ間転送ＩＤと優先度とを対応させたテーブルを備え、該テーブルを参照して、該バス要求情報を該優先度毎のバス要求キューに振り分けるバス要求選択部を、該第１グループと該第２グループのそれぞれに対応して備えている、
ことを特徴とする請求項２乃至４のいずれか１つに記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリントエンジンとスキャナとプロセッサと複数の印刷画像処理用コプロセッサと複数のスキャン画像処理用コプロセッサとを備えた画像形成装置に関する。
【背景技術】
【０００２】
画像形成装置のコピー機能では、スキャナで読み取った画像を処理しプリントエンジンに供給するので、スキャナで読み取った画像を処理するスキャン画像処理部と、画像処理を行ってプリントエンジンに供給する印刷画像処理部とが連携しており、バスを介して両処理部が結合されている。
【０００３】
このようなハードウェア構成において、スキャンしながらプリントするというマルチ動作を行う場合、スキャン画像処理部でのバス使用率が上昇するので、プリントエンジンへのデータ供給が遅延して、印刷される画像に異常が発生する原因となる。
【０００４】
この問題を解決するため、バス幅を広くしたりクロック周波数を向上させたりしてバス帯域幅を向上させると、製品がコストアップする原因となる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−４３４８号公報
【特許文献２】特開２００７−２４１９１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、このような問題点に鑑み、バス帯域幅を向上させることなくマルチ動作を保証することを可能にする画像形成装置を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の第１態様では、プリントエンジンと、
スキャナと、
プロセッサと、バスと、該バスに結合されそれぞれバッファメモリを備えた複数のモジュールと、該複数のモジュールからのバス要求に応答していずれか１つにバス使用を許可する調停回路とを備え、該複数のモジュールは、該プロセッサのコプロセッサとして機能する複数の印刷用ＡＳＩＣモジュールと、該プロセッサのコプロセッサとして機能する複数のスキャナ用ＡＳＩＣモジュールと、該プロセッサに結合され該プロセッサと該バスとの間の転送バッファとして機能するプロセッサインターフェイスモジュールとを含み、該プロセッサインターフェイスモジュールと該プリントエンジンとの間の転送バッファとして機能するプリントエンジンインターフェイスモジュールを該複数の印刷用ＡＳＩＣモジュールの１つとして含み、該スキャナと該複数のスキャナ用ＡＳＩＣモジュールのうちの１つの画像処理モジュールとの間の転送バッファとして機能するスキャナインターフェイスモジュールを該複数のスキャナ用ＡＳＩＣモジュールとして含む画像処理装置と、
指示入力手段と、
メインコントローラと、
を備え、該メインコントローラは、該指示入力手段からの指示入力に応じてプリント機能、コピー機能又は画像スキャン機能を実行させ、この際、該画像処理装置は、実行対象の機能に応じて該複数の印刷用ＡＳＩＣモジュール又は該複数のスキャナ用ＡＳＩＣモジュールを動作させ、該バス調停回路は、該複数のモジュールのうちの２モジュールの一方から他方へのバッファメモリ間データ転送について設定された優先度に基づいて、許可対象のデータ転送を決定する画像形成装置において、
該プリント機能と該画像スキャン機能とを並列実行させる第１マルチ動作の場合と、該コピー機能と該画像スキャン機能とを並列実行させる第２マルチ動作の場合とのそれぞれについて予め、該プロセッサインターフェイスモジュールと該複数の印刷用ＡＳＩＣモジュールとの第１グループと、該プロセッサインターフェイスモジュールと該複数のスキャナ用ＡＳＩＣモジュールとの第２グループとにそれぞれバッファメモリ間データ転送のバス要求を許可する許可時間帯が割り当てられており、
該バス調停回路は、該第１又は第２のマルチ動作の場合、該第１グループの許可時間帯と該第２グループの許可時間帯とを交互に割り当て、該第１グループの許可時間帯においては該第１グループのバッファメモリ間データ転送のバス要求を許可し、該第２グループの許可時間帯においては該第２グループのバッファメモリ間データ転送のバス要求を許可し、
該許可時間帯は、該第１のマルチ動作の場合には該第２のマルチ動作の場合よりも（該第１グループの許可時間帯）／（該第２グループの許可時間帯）の値が大きくなるように定められている。
【０００８】
本発明の第２態様では、第１態様において、該調停回路は、優先度毎のバス要求キューを備え、バッファメモリ間データ転送中を示すバスビジー信号が非活性に遷移したことに応答して、バス要求情報が含まれているバス要求キューのうち最も高い優先度の高いバス要求キューから次のバス要求情報を取り出してバス要求を許可する。
【０００９】
本発明による画像形成装置の第３態様では、第２態様において、該バス要求情報は、どのモジュールのバッファメモリからどのモジュールのバッファメモリへのデータ転送であるかを識別するバッファメモリ間転送ＩＤと、転送サイズとの情報を含む。
【００１０】
本発明による画像形成装置の第４態様では、第３態様において、該バスにはさらにＤＭＡＣモジュールが結合され、
該ＤＭＡＣモジュールは、該調停回路により許可されたバス要求情報に基づいてバッファメモリ間転送をバースト転送モードで実行する。
【００１１】
本発明による画像形成装置の第５態様では、第２乃至４態様のいずれか１つにおいて、該調停回路は、バッファメモリ間転送ＩＤと優先度とを対応させたテーブルを備え、該テーブルを参照して、該バス要求情報を該優先度毎のバス要求キューに振り分けるバス要求選択部を、該第１グループと該第２グループのそれぞれに対応して備えている。
【発明の効果】
【００１２】
上記第１態様の構成によれば、プリント機能と画像スキャン機能とを並列実行させる第１マルチ動作の場合と、コピー機能と該画像スキャン機能とを並列実行させる第２マルチ動作の場合とのそれぞれについて予め、プロセッサインターフェイスモジュールと複数の印刷用ＡＳＩＣモジュールとの第１グループと、該プロセッサインターフェイスモジュールと複数のスキャナ用ＡＳＩＣモジュールとの第２グループとにそれぞれバッファメモリ間データ転送のバス要求を許可する許可時間帯を割り当てておき、バス調停回路が、該第１又は第２のマルチ動作の場合、該第１グループの許可時間帯と該第２グループの許可時間帯とを交互に割り当て、該第１グループの許可時間帯においては該第１グループのバッファメモリ間データ転送のバス要求を許可し、該第２グループの許可時間帯においては該第２グループのバッファメモリ間データ転送のバス要求を許可し、該許可時間帯は、該第１のマルチ動作の場合には該第２のマルチ動作の場合よりも（該第１グループの許可時間帯）／（該第２グループの許可時間帯）の値が大きくなるように定められているので、バス幅を広くしたりクロック周波数を向上させたりしてバス帯域幅を向上させることなく、マルチ動作時の遅延によるエラー発生を防止できるという効果を奏し、製品コスト低減に寄与するところが大きい。
【００１３】
上記第２態様の構成によれば、優先度毎のバス要求キューを備え、バッファメモリ間データ転送中を示すバスビジー信号が非活性に遷移したことに応答して、バス要求情報が含まれているバス要求キューのうち最も高い優先度の高いバス要求キューから次のバス要求情報を取り出してバス要求を許可するので、バッファメモリ間データ転送の切り替え回数増加によるオーバーヘッドを低減してパフォーマンスを向上させることができるという効果を奏する。
【００１４】
上記第３態様の構成によれば、該バス要求情報は、どのモジュールのバッファメモリからどのモジュールのバッファメモリへのデータ転送であるかを識別するバッファメモリ間転送ＩＤと、転送サイズとの情報を含むので、データ転送開始処理を容易に行うことができるという効果を奏する。
【００１５】
上記第４態様の構成によれば、ＤＭＡＣモジュールにより効率よくデータ転送することができるという効果を奏する。
【００１６】
上記第５態様の構成によれば、該調停回路が、バッファメモリ間転送ＩＤと優先度とを対応させたテーブルを備え、該テーブルを参照して、該バス要求情報を該優先度毎のバス要求キューに振り分けるバス要求選択部を、該第１グループと該第２グループのそれぞれに対応して備えているので、グループ毎に優先制御を容易に行うことができるという効果を奏する。
【００１７】
本発明の他の目的、特徴的な構成及び効果は、以下の説明を特許請求の範囲及び図面の記載と関係づけて読むことにより明らかになる。 
【図面の簡単な説明】
【００１８】
【図１】画像形成装置の要部ハードウェア構成を示す概略ブロック図である。
【図２】図１中のハブとこれに結合された一部のモジュールの構成を示す概略ブロック図である。
【図３】（Ａ）は第１グループ（印刷画像処理に関するモジュール）のモジュール間転送ＩＤ毎の転送元モジュール名と転送先モジュール名とを示す表であり、（Ｂ）は第２グループ（スキャン画像処理に関するモジュール）のモジュール間転送ＩＤ毎の転送元モジュール名と転送先モジュール名とを示す表であり、（Ｃ）はモジュール間転送ＩＤ毎の転送元バッファアドレスと転送先バッファアドレスとを示す表であり、（Ｄ）は第１グループ内のモジュール間転送ＩＤの優先度を示す表であり、（Ｅ）は第２グループ内のモジュール間転送ＩＤの優先度を示す表である。
【図４】（Ａ）はプリント機能とスキャン機能の並列実行（第１マルチ動作）時の第１グループと第２グループの許可時間帯Ｔ１とＴ２の比ｒ１：ｒ２と切替周期Ｔとの説明図であり、（Ｂ）はコピー機能とスキャン機能の並列実行（第２マルチ動作）時の第１グループと第２グループの許可時間帯Ｔ３とＴ４の比ｒ３：ｒ４と切替周期Ｔとの説明図である。
【図５】図２中の調停回路の構成を示す概略ブロック図である。
【図６】図５中の許可時間帯制御部の構成を示す概略ブロック図である。
【図７】図１中の画像処理装置２０の動作概要を示すタイミングチャートである。
【実施例１】
【００１９】
図１は、画像形成装置の要部のハードウェア構成を示す概略ブロック図である。
【００２０】
この画像形成装置は、コピー機能と、プリント機能と、画像スキャン機能とを備えるとともに、コピー又はプリントの機能とスキャン機能とを並列実行させることを保証している。
【００２１】
メインコントローラ１０は、不図示のプロセッサとプログラム及びデータ格納用の記憶手段とを備え、該プログラムは該プロセッサに対し、後述のようにシステム全体の処理を行わせる。
【００２２】
メインコントローラ１０は、バス１１を介して、操作パネル１２、スキャナ１３、プリントエンジン１４、通信部１５、メモリ１６及び画像処理装置２０と結合されている。通信部１５は、外部のホストコンピュータと結合され、画像処理装置２０はスキャナ１３及びプリントエンジン１４とも結合されている。図１では複雑化を避けるため、バス１１の調停回路を図示省略している。
【００２３】
操作パネル１２及び通信部１５は、指示入力手段として機能する。
【００２４】
メインコントローラ１０は、ホストコンピュータから通信部１５を介してプリント要求を受け付けると、そのＰＤＬ（頁記述言語）データを、通信部１５を介してメモリ１６に格納させ、画像処理装置２０に対し、印刷要求するとともに、不図示の用紙搬送装置を起動させて、印刷準備が整ったところでプリントエンジン１４に印刷準備完了を通知する。
【００２５】
画像処理装置２０は該印刷要求に応答して、メモリ１６内のＰＤＬデータを読み出し、それを処理して中間言語に変換した後、ビットマップデータに展開し、既定値及び操作パネル１２で設定された値に基づいて、画像の回転や拡縮処理等を行った後、プリントエンジン１４に供給することにより、印刷処理を行う。
【００２６】
ユーザが操作パネル１２を操作してメインコントローラ１０に対し画像スキャンを要求すると、メインコントローラ１０はこれに応答して、既定値及び操作パネル１２で設定された値に基づいてスキャナ１３を設定し、原稿が載置された不図示のオートシートフィーダを動作させて、スキャナ１３に対し原稿画像を読み取らせ、画像データに変換させる。この画像データは、画像処理装置２０に供給されてハーフトーン化され、画像圧縮されて、メモリ１６に格納される。
【００２７】
ユーザが操作パネル１２を操作してメインコントローラ１０に対しコピーを要求すると、メインコントローラ１０はこれに応答して、画像スキャンの場合と同様にしてメモリ１６に画像データを格納させた後、画像処理装置２０に対し印刷要求する。画像処理装置２０はこれに応答して、メモリ１６から画像データを読み出し、既定値及び操作パネル１２で設定された値に基づいて、画像の回転や拡縮処理等を行った後、プリントエンジン１４に供給することにより、印刷処理を行う。
【００２８】
画像処理装置２０は、実際には図１中に点線で示すように、印刷画像処理部（印刷画像処理ボード）２１とスキャン画像処理部（スキャン画像処理ボード）２２とに物理的に分割され、両者が着脱自在にケーブルを介して電気的に結合され、これにより、印刷画像処理部２１及びスキャン画像処理部２２をそれぞれ独立に開発又は改良可能としている。図１では説明の簡単化の為に、両者を一体的に表している。
【００２９】
印刷画像処理部２１では、ＭＰＵ２３がバス２４を介してＤＭＡＣ（ダイレクト・メモリ・アクセス・コントローラ）２５及びプロセッサインターフェイスモジュール２６に結合されている。ＭＰＵ２３はまた、バス１１を介してメインコントローラ１０と結合されている。
【００３０】
ＭＰＵ２３は、メインコントローラ１０から上記印刷要求を受け取ると、メモリ１６内のＰＤＬデータの一部を、ＤＭＡＣ２５を介して、ＭＰＵ２３に内蔵のバッファメモリにバースト転送し、そのＰＤＬデータをビットマップ展開し、この際、画像処理の一部を後述のように印刷画像処理部２１で行わせ、ビットマップデータを、ＤＭＡＣ２５を介して、プロセッサインターフェイスモジュール２６内の対応する領域にバースト転送する。
【００３１】
この領域のデータ量が所定値以下になると、プロセッサインターフェイスモジュール２６はＭＰＵ２３に割込を掛け、ＭＰＵ２３はこれに応答して、次の一部について、前記転送、展開及び転送処理を行う。この処理が繰り返し行われる。
【００３２】
プロセッサインターフェイスモジュール２６は、デュアルポートメモリであり、一方のポートがバス２４に結合され、他方のポートがハブ２７に結合されている。
【００３３】
印刷画像処理部２１側のハブ２７には、プロセッサインターフェイスモジュール２６内のデータを処理するための、それぞれバッファメモリを備えたハードウェアモジュールである画像回転モジュール２８、画像伸張、ラスタライズ、画像圧縮（画像伸張、ラスタライズ及び画像圧縮の順次処理については特開２００８−２９０３７４参照）の画像処理モジュール２９、３０及び３１並びに処理された画像データをビデオ信号に変換してプリントエンジン１４に供給するためのプリントエンジンインターフェイスモジュール３２が結合され、更に、データをモジュール間（モジュール内のバッファメモリと他のモジュール内のバッファメモリとの間）で転送するためのＤＭＡＣ３３が結合されている。
【００３４】
同様に、スキャン画像処理部２２側のハブ２７には、それぞれバッファメモリを備えたハードウェアモジュールである、スキャン画像を提供するスキャナインターフェイスモジュール３４並びにスキャン画像を処理するＪＰＥＧ圧縮モジュール３５、ＪＰＥＧ伸長モジュール３６、ハーフトーン処理モジュール３７及び画像拡縮等の画像処理モジュール３８が結合されている。
【００３５】
ハブ２７に結合された印刷画像処理部２１側のモジュール２８〜３１及びスキャン画像処理部２２側のモジュール３４〜３８は、ＭＰＵ２３が高性能であれば論理的にはＭＰＵ２３でソフトウェア処理可能なもの処理を分担して処理するものであり、ＭＰＵ２３のコプロセッサとして機能し、プロセッサインターフェイスモジュール２６はこれらコプロセッサとＭＰＵ２３との間のインターフェイス（転送バッファ）として機能している。すなわち、ＡＳＩＣモジュールを用いて分散処理することにより、画像処理装置２０全体として、コストパフォーマンスを向上させている。
【００３６】
図２（Ａ）は、ハブ２７とこれに結合された一部のモジュールを示す概略ブロック図である。
【００３７】
ハブ２７は、各モジュールに結合されたバス２７０と、バス２７０を介したモジュール間でのデータ転送の一部を制御（残りはＤＭＡＣ３３が制御）するバスコントローラ２７１とを備えている。このバス２７０は、アドレスバスと、データバスと、コントロールバスとを備えている。バスコントローラ２７１は、各モジュールからのバス使用権要求を調停するための調停回路２７２を備えている。
【００３８】
プロセッサインターフェイスモジュール２６は、制御部２６０と、３つの転送先及び３つの転送元のそれぞれに対応したバッファメモリ２６１〜２６６とを備えている。
【００３９】
図１のＭＰＵ２３は、上記のようにＤＭＡＣ２５を介しバッファメモリ２６１にビットマップデータを書き込む。制御部２６０は、この一連の書き込みが完了すると、独立の信号線を介し、調停回路２７２に対し、アドレスバス及びデータバスの使用権を要求（バス要求）する。図２（Ｂ）は、このバス要求（モジュール毎）、コントロールバス（Ｃバス）許可（モジュール毎）及びバスビジー（各モジュールに共通）の信号並びにＣバス上の信号（情報種別と情報の内容との組）を示す。
【００４０】
調停回路２７２は、バスコントローラ２７１を介し制御部２６０に対し、Ｃバス使用許可（バス要求に対するＡＣＫ信号）を活性にし、制御部２６０はこれに応答して、Ｃバスを介し、バス要求情報としてモジュール間転送ＩＤと転送サイズとを、バスコントローラ２７１を介し調停回路２７２に送信する。
【００４１】
このモジュール間転送ＩＤにより、転送元バッファメモリの先頭アドレスと、転送先バッファメモリの先頭アドレスとが定まる。転送元バッファメモリは転送元モジュール内に存在し、転送先バッファメモリは転送先モジュール内に存在するので、バッファメモリの先頭アドレスにより、転送元又は転送先のモジュールが定まる。図３（Ａ）は印刷画像処理部２１に関するモジュール間転送ＩＤ毎の転送元モジュール名と転送先モジュール名とを示す。図３（Ｂ）はスキャン画像処理部２２に関するモジュール間転送ＩＤ毎の転送元モジュール名と転送先モジュール名とを示す。図３（Ｃ）はモジュール間転送ＩＤ毎の転送元バッファアドレスと転送先バッファアドレスとを示す。
【００４２】
ＤＭＡＣ３３は、図３（Ｃ）のテーブルを備えている。また、各モジュールの制御部は、そのモジュールのバッファメモリで定まる前記ＩＤが格納されたレジスタを備えている。
【００４３】
調停回路２７２は、上記バス要求情報を受け付けると、後述のようにこれをキューに入れ、バスコントローラ２７１を介し、Ｃバス上にこのＩＤ（情報の内容）を伴った要求ＡＣＫ（情報種別）を送信し、バス要求元はこれに応答して、上記バス要求を非活性にする。調停回路２７２は、このモジュール間転送ＩＤのバス要求を許可すると、バスコントローラ２７１を介し、Ｃバス上に、このＩＤ（許可ＩＤ）と転送サイズと（情報の内容）を伴ったＤＭＡ転送要求（情報種別）を送信する。
【００４４】
ＤＭＡＣ３３は、図３（Ｃ）のテーブルを参照して、このＩＤの転送元バッファ先頭アドレス及び転送先バッファ先頭アドレスを取得し、それぞれ内部の転送元アドレスカウンタ及び転送先アドレスカウンタに設定し、また、前記転送サイズを内部カウンタに設定する。一方、これと並行して、許可ＩＤに対応するバッファメモリを備えたモジュールの制御部は、モジュール間転送ＩＤに応じてこのバッファメモリを読み出し状態又は書き込み状態にし、許可ＩＤに対応するバッファメモリを備えていないモジュールの制御部は、自モジュールをディセーブル状態にする。
【００４５】
ＤＭＡＣ３３は、この状態で、バスビジーを活性にして、上記カウンタを制御しながら転送元バッファメモリから転送先バッファメモリへ上記転送サイズだけデータをバースト転送する。ＤＭＡＣ３３は、転送が完了すると、バスビジーを非活性にする。調停回路２７２は、バスビジーが非活性に遷移したことに応答して、後述のように次の許可ＩＤを決定する。
【００４６】
画像回転モジュール２８は、制御部２８０、バッファメモリ２８１及び２８２、データ処理部２８３を備えている。制御部２８０は、バスビジーが非活性に遷移したことにより、バッファメモリ２８１へのデータ転送が完了したことを知得すると、データ処理部２８３を起動させる。データ処理部２８３はこれに応答して、バッファメモリ２８１内のデータを処理し、その結果をバッファメモリ２８２に書き込む。この処理が完了すると、制御部２８０は、バッファメモリ２８１からバッファメモリ２９１へのデータ転送に関し、調停回路２７２にバス使用権を要求し、これにより上記同様の処理が行われる。
【００４７】
図１に戻って、上記同様にして、画像処理モジュール２９で処理されたデータはハブ２７を介し画像処理モジュール３０に転送され、画像処理モジュール３０で処理されたデータはハブ２７を介し画像処理モジュール３１に転送される。
【００４８】
プリントエンジンインターフェイスモジュール３２からプリントエンジン１４への平均データ転送速度は、プリントエンジン１４での機械的処理のため比較的遅いので、画像処理モジュール３１で処理されたデータは、一旦、ハブ２７を介しプロセッサインターフェイスモジュール２６の、図２のバッファメモリ２６２へ転送される。この転送が完了すると、制御部２６０はＭＰＵ２３に割り込みをかけ、ＭＰＵ２３はこれに応答して、バッファメモリ２６２のデータを、ＤＭＡＣ２５を介しメモリ１６に保存させる。但し、各プリントジョブの初回では、制御部２６０はこの保存前に、バッファメモリ２６２のデータをバッファメモリ２６３へコピーする。
【００４９】
プリントエンジン１４は、上記印刷準備完了通知に応答して、自己の印刷準備を行った後、プリントエンジンインターフェイスモジュール３２に対しデータを要求する。プリントエンジンインターフェイスモジュール３２は、そのバッファメモリ内のデータが所定値以下であることを検出すると、調停回路２７２に対し、バス使用権を要求する。
【００５０】
調停回路２７２がこの要求を許可すると、バッファメモリ２６３からプリントエンジンインターフェイスモジュール３２のバッファメモリ内へ上記と同様にしてビットマップデータを転送する。プリントエンジンインターフェイスモジュール３２内のバッファメモリはデュアルポートメモリであり、モジュール３２の制御部は、この転送と並行してこのバッファメモリからデータを読み出すことができる。モジュール３２の制御部は、このバッファメモリからデータを読み出し、伸長してビデオ信号に変換し、これをプリントエンジン１４へ供給する。
【００５１】
このようなプリントエンジンインターフェイスモジュール３２の動作は、プリントエンジン１４とプロセッサインターフェイスモジュール２６との間のインターフェイス（転送バッファ）としての動作である。
【００５２】
制御部２６０は、バッファメモリ２６３内のデータが空になると、ＭＰＵ２３に割り込みをかけ、ＭＰＵ２３はこれに応答して、メモリ１６内に保存している次のビットマップデータを、ＤＭＡＣ２５を介しバッファメモリ２６３に転送させる。
【００５３】
一方、画像スキャンにおいて、スキャナインターフェイスモジュール３４がスキャナ１３から画像データを受信し、そのバッファメモリが所定値以上になると、スキャナインターフェイスモジュール３４の制御部は、調停回路２７２に対し、バス使用権を要求する。このバッファメモリはデュアルポートメモリであり、モジュール３４の制御部は、この受信と並行してこのバッファメモリからデータを読み出すことができる。
【００５４】
調停回路２７２がこの要求を許可すると、モジュール３４のバッファメモリからＤＭＡＣ３３を介しハーフトーン処理モジュール３７内の一方のバッファメモリへ上記と同様にしてスキャン画像データを転送する。
【００５５】
このようなスキャナインターフェイスモジュール３４の動作は、スキャナ１３と画像処理モジュール３７との間のインターフェイス（転送バッファ）としての動作である。
【００５６】
次いでハーフトーン処理モジュール３７内の画像処理部は、このバッファメモリ内のデータに対しハーフトーン化の処理を行って、その結果を内部の他方のバッファメモリへ書き込む。モジュール３７内の制御部は、この処理が完了すると、上記と同様にして、該他方のバッファメモリからＤＭＡＣ３３を介しＪＰＥＧ圧縮モジュール３５の一方のバッファメモリへデータ転送する。ＪＰＥＧ圧縮モジュール３５でのデータ圧縮処理が終了すると、上記と同様にして、ＪＰＥＧ圧縮モジュール３５からＤＭＡＣ３３を介しプロセッサインターフェイスモジュール２６のバッファメモリ２６４へ、次いでバッファメモリ２６４からＤＭＡＣ２５を介しメモリ１６へ、圧縮画像データを転送する。
【００５７】
ユーザが操作パネル１２を操作して、例えば、スキャン画像の縮小処理を要求すると、メインコントローラ１０はこれをＭＰＵ２３に通知し、ＭＰＵ２３はこれに応答して、メモリ１６内に保存している圧縮スキャン画像データを、ＤＭＡＣ２５を介しプロセッサインターフェイスモジュール２６のバッファメモリ２６５に転送させる。次いでプロセッサインターフェイスモジュール２６の制御部２６０は、上記と同様にして、バッファメモリ２６５からＤＭＡＣ３３を介しＪＰＥＧ伸長モジュール３６へ圧縮画像データを転送する。ＪＰＥＧ伸長モジュール３６でこのデータを伸張すると、上記と同様にして、ＪＰＥＧ伸長モジュール３６からＤＭＡＣ３３を介し画像処理モジュール３８へデータを転送する。画像処理モジュール３８で縮小処理が終了すると、上記と同様にして、画像処理モジュール３８からＤＭＡＣ３３を介しプロセッサインターフェイスモジュール２６のバッファメモリ２６６へデータを転送する。次いでＭＰＵ２３は、制御部２６０からの要求に応答して、上記と同様にして、バッファメモリ２６６からＤＭＡＣ２５を介しメモリ１６へ、縮小処理されたスキャン画像データを転送する。
【００５８】
図１において、画像を印刷しながらスキャン画像処理を行う場合、プロセッサインターフェイスモジュール２６からプリントエンジンインターフェイスモジュール３２へのデータ転送が遅れて、画像印刷中にプリントエンジンインターフェイスモジュール３２内のバッファが空になると、異常画像が生ずる原因となる。特に、プリント機能とスキャン機能（画像をスキャンしてそのファイルを補助記憶装置に格納するスキャン・ツー・ボックスの処理を含む機能、以下同様。）とを並列実行している第１マルチ動作の場合には、コピー機能とスキャン機能とを並列実行している第２マルチ動作の場合よりも印刷画像処理部２１での画像処理量が多くなるので、この問題が大きくなる。一方、第２マルチ動作の場合、印刷画像処理部２１での画像処理量が比較的少ないので、スキャン画像処理部２２での処理性能を向上させて全体としてのパフォーマンスを向上させる必要がある。
【００５９】
上記問題を解決するため、図１において、ハブ２７に結合された印刷画像処理部２１のモジュールとスキャン画像処理部２２のモジュールとを、モジュール単位で帯域制御すると、構成が複雑になる。一方、プロセッサインターフェイスモジュール２６からプリントエンジンインターフェイスモジュール３２へのデータ転送及びスキャナインターフェイスモジュール３４からプロセッサインターフェイスモジュール２６へのデータ転送は、比較的長い周期で間欠的に行われ、また、この動作が遅延すると異常画像が印刷されたり、スキャン画像データが欠落するというエラーが生ずる。
【００６０】
そこで、モジュール２６を共通とし、ハブ２７に結合された印刷画像処理モジュールの第１グループ（モジュール２６、２８〜３２）と、ハブ２７に結合されたスキャン画像処モジュールの第２グループ（モジュール２６、３４〜３８）とを単位として、交互にバス使用権を認め、次のようにグループ単位の許可時間帯制御を行う。
【００６１】
すなわち、図４（Ａ）及び（Ｂ）に示すように、バス２７０によるデータ転送について、ｒ１／（ｒ１＋ｒ２）＞ｒ３／（ｒ３＋ｒ４）となるように、すなわち、ｒ２／（ｒ１＋ｒ２）＜ｒ４／（ｒ３＋ｒ４）となるように、第１マルチ動作の場合の第１グループと第２グループの許可時間帯Ｔ１とＴ２の比ｒ１：ｒ２と、第２マルチ動作の場合の第１グループと第２グループの許可時間帯Ｔ３とＴ４の比ｒ３：ｒ４とを定めることにより、上記エラーの発生を防止すると共に、第２マルチ動作の場合に、スキャン画像処理をより高速化して、装置全体のパフォーマンスを向上させている。
【００６２】
ここで、グループ間バス使用権の切替周期Ｔ＝Ｔ１＋Ｔ２、Ｔ＝Ｔ３＋Ｔ４は、長いほど切り替えのオーバーヘッドを短縮することができるが、短か過ぎると、上記異常が発生するので、両者を考慮して定める。
【００６３】
また、第１グループに関しては、上記問題の発生を防止するため、プロセッサインターフェイスモジュール２６からプリントエンジンインターフェイスモジュール３２へのデータ転送を最優先させる。画像回転モジュール２８から画像処理モジュール２９への転送は、画像回転モジュール２８から画像処理モジュール２９、画像処理モジュール２９から画像処理モジュール３０、画像処理モジュール３０から画像処理モジュール３１、画像処理モジュール３１からプロセッサインターフェイスモジュール２６への転送よりも優先させる。
【００６４】
同様に、第２グループに関しては、スキャナインターフェイスモジュール３４からハーフトーン処理モジュール３７へのデータ転送を最優先させる。これに続くハーフトーン処理モジュール３７からＪＰＥＧ圧縮モジュール３５及びＪＰＥＧ圧縮モジュール３５からプロセッサインターフェイスモジュール２６への転送を、プロセッサインターフェイスモジュール２６からＪＰＥＧ伸長モジュール３６、ＪＰＥＧ伸長モジュール３６から画像処理モジュール３８、画像処理モジュール３８からプロセッサインターフェイスモジュール２６への転送よりも優先させる。
【００６５】
さらに、１つのモジュールがバス２７０を使用している時に、より優先度の高いモジュールからのバス使用権の要求があった場合に、その時点でバス使用権を切り替えると、オーバーヘッドが生ずる。一方、各モジュールのバッファ容量は比較的少ない。
【００６６】
そこで、調停回路２７２は、現在のモジュール間データ転送完了を待って、次にどのモジュールにバス使用権を許可するかを決定する。このため、調停回路２７２内に、優先度別にキューを備え、調停回路２７２は、バスが解放された時点（バスビジーが非活性に遷移した時点）で優先度に従って許可対象のモジュールを決定する。
【００６７】
図３（Ｄ）は、ハブ２７に結合された第１グループ内のモジュール間転送ＩＤの優先度を示し、図３（Ｅ）はハブ２７に結合された第２グループ内のモジュール間転送ＩＤの優先度を示す。
【００６８】
図５は、図２中の調停回路２７２の構成を示す概略ブロック図である。この調停回路２７２は、構成要素４０、５０、６０〜６３を備えている。
【００６９】
第１グループバス要求選択部４０は、バス解放時点で、第１グループ内の複数のモジュールからバス使用権要求があった場合に、その１つのバス要求情報（ＩＤと転送サイズ）を第１グループバス要求情報ＰＲＱとして選択するためのものであり、構成要素４１〜４５を備えている。第２グループバス要求選択部５０は、バス解放時点で、第２グループ内の複数のジュールからバス使用権要求があった場合に、その１つのバス要求情報を第２グループバス要求情報ＳＲＱとして選択するためのものであり、構成要素５１〜５５を備えている。
【００７０】
許可時間帯制御部６０は、これらバス要求情報ＰＲＱとバス要求情報ＳＲＱとの一方を、許可期間毎に切り替えて、バス許可情報ＲＱとして出力する。
【００７１】
ＩＤ／優先度テーブル記憶部６１には、図３（Ａ）に示す内容が設定され、第１グループバス要求選択部４０はこれを用いて次のようなバス要求選択制御を行う。すなわち、優先度別振分部４１は、ＩＤ／優先度テーブル記憶部６１を参照してＣバス上のバス要求情報ＲＱに含まれるＩＤが、優先度１に対応していればバス要求情報をキュー４２へ追加し、優先度２に対応していればキュー４３に追加し、優先度３に対応していればキュー４４に追加する。優先制御部４５は、バス解放時点でキュー４２にバス要求情報が含まれていれば、その先頭要素を取り出しこれを第１グループバス要求情報ＰＲＱとして許可時間帯制御部６０に供給し、キュー４２にバス要求情報が含まれておらず、キュー４３にバス要求情報が含まれていれば、その先頭要素を取り出しこれを第１グループバス要求情報ＰＲＱとして許可時間帯制御部６０に供給し、キュー４２及び４３にバス要求情報が含まれておらず、キュー４４にバス要求情報が含まれていれば、その先頭要素を第１グループバス要求情報ＰＲＱとして許可時間帯制御部６０に供給する。
【００７２】
同様に、ＩＤ／優先度テーブル記憶部６２には、図３（Ｂ）に示す内容が設定され、第２グループバス要求選択部５０はこれを用いて次のようなバス要求選択制御を行う。すなわち、優先度別振分部５１は、ＩＤ／優先度テーブル記憶部６２を参照してＣバス上のバス要求情報ＲＱに含まれるＩＤが、優先度１に対応していればバス要求情報をキュー５２へ追加し、優先度２に対応していればキュー５３に追加し、優先度３に対応していればキュー５４に追加する。優先制御部５５は、バス解放時点でキュー５２にバス要求情報が含まれていれば、その先頭要素を取り出しこれを第２グループバス要求情報ＳＲＱとして許可時間帯制御部６０に供給し、キュー５２にバス要求情報が含まれておらず、キュー５３にバス要求情報が含まれていれば、その先頭要素を取り出しこれを第２グループバス要求情報ＳＲＱとして許可時間帯制御部６０に供給し、キュー５２及び５３にバス要求情報が含まれておらず、キュー５４にバス要求情報が含まれていれば、その先頭要素を第２グループバス要求情報ＳＲＱとして許可時間帯制御部６０に供給する。
【００７３】
図６は許可時間帯制御部６０の構成を示す概略ブロック図である。この許可時間帯制御部６０は、構成要素６３〜７６を備えている。
【００７４】
許可時間帯記憶部６３には、上記比ｒ１：ｒ２及びｒ３：ｒ４と、クロックＣＬＫを単位とした上記切替周期Ｔとが格納されている。
【００７５】
許可時間帯設定部６４は、リセット時（パワーオン時を含む）に、許可時間帯記憶部６３のデータに基づき、第１マルチ動作時の第１グループバス要求情報ＰＲＱ許可時間帯Ｔ１＝Ｔ＊ｒ１／（ｒ１＋ｒ２）及び第２グループバス要求情報ＳＲＱ許可時間帯Ｔ２＝Ｔ−Ｃ１と、第２マルチ動作時の第１グループバス要求情報ＰＲＱ許可時間帯Ｔ３＝Ｔ＊ｒ３／（ｒ３＋ｒ４）及び第２グループバス要求情報ＳＲＱ許可時間帯Ｔ４＝Ｔ−Ｃ３を算出して、これらをメモリ又はレジスタに記憶しておく。
【００７６】
許可時間帯設定部６４には、プリント機能実行中（第１グループで画像データ処理中）、スキャン機能実行中（２２で画像データ処理中）及びコピー機能実行中（第１グループで画像データ処理中）の信号が供給される。許可時間帯設定部６４は、第１マルチ動作中であれば、レジスタ６５及び６６にそれぞれＴ１及びＴ２を設定し、第２マルチ動作中であれば、レジスタ６５及び６６にそれぞれＴ３及びＴ４を設定する。
【００７７】
許可時間帯設定部６４はまた、プリントとスキャン又はコピーとスキャンの両機能の並列実行開始に応答して、オアゲート６７を介しカウンタ６８のクリア入力端及びＲＳフリップフロップ６９のセット入力端に１個のパルスを供給する。これにより、カウンタ６８の出力がゼロクリアされるとともに、ＲＳフリップフロップ６９のＱ出力が‘１’に遷移し、＊Ｑ出力が‘０’に遷移する。
【００７８】
セレクタ７０は、第１グループバス要求情報ＰＲＱと第２グループバス要求情報ＳＲＱの入力のうち、ＲＳフリップフロップ６９のＱ出力が‘１’であれば第１グループバス要求情報ＰＲＱを選択し、‘０’であれば第２グループバス要求情報ＳＲＱを選択し、選択したものをバス許可情報ＲＱＤとして出力する。
【００７９】
ＲＳフリップフロップ６９のＱ出力は、アンドゲート７１の一方の入力端に供給され、アンドゲート７１の他方の入力端にクロックＣＬＫが供給される。これによりクロックＣＬＫのパルスがカウンタ６８で計数され、その値とレジスタ６５の値とがコンパレータ７２で比較される。コンパレータ７２は、両値が一致すると、一致パルスをＲＳフリップフロップ６９のリセット入力端に供給する。これにより、ＲＳフリップフロップ６９のＱ出力が‘０’、＊Ｑ出力が‘１’に遷移して、アンドゲート７１が閉じられる。
【００８０】
一方、ＲＳフリップフロップ６９の＊Ｑ出力は、カウンタ７３のクリア入力端及びＲＳフリップフロップ７４のセット入力端に供給され、カウンタ７３のカウントがゼロクリアされるとともに、ＲＳフリップフロップ７４がセット状態に遷移してアンドゲート７５が開かれ、クロックＣＬＫのパルスがカウンタ７３によりカウントされる。カウンタ７３のカウント値とレジスタ６６の値とがコンパレータ７６で比較され、両値が一致すると、コンパレータ７６は一致パルスをＲＳフリップフロップ７４のリセット入力端に供給する。これにより、ＲＳフリップフロップ７４のＱ出力が‘０’、＊Ｑ出力が‘１’に遷移して、アンドゲート７５が閉じられる。
【００８１】
ＲＳフリップフロップ７４の＊Ｑ出力はオアゲート６７に供給され、これにより、ＲＳフリップフロップ６９がセット状態になる。
【００８２】
このようにして、セレクタ７０は、第１マルチ動作中であれば、第１グループバス要求情報ＰＲＱと第２グループバス要求情報ＳＲＱを上記比ｒ１：ｒ２及び周期Ｔで交互に選択し、バス許可情報ＲＱとして出力し、第２マルチ動作中であれば、第１グループバス要求情報ＰＲＱと第２グループバス要求情報ＳＲＱを上記比ｒ３：ｒ４及び周期Ｔで交互に選択し、バス許可情報ＲＱとして出力する。
【００８３】
図７は、上記のように構成された画像処理装置２０の動作概要を示すタイミングチャートである。図７では、複雑化を避けるため、画像処理モジュール（ＣＰ２〜ＣＰ４）３０、３１、３８での処理を省略している。優先制御部４５及び５５は、上述のように、バス解放時点でキューの先頭要素を取り出してセレクタ７０に供給するので、切替時点でデータ転送中であれば、その終了を待って、次のバス許可情報ＲＱを選択することになる。
【００８４】
以上において、本発明の好適な実施例を説明したが、本発明には他にも種々の変形例が含まれ、上記複数の実施例で述べた構成要素の他の組み合わせ、各構成要素の機能を実現する他の構成を用いたもの、当業者であればこれらの構成又は機能から想到するであろう他の構成も、本発明に含まれる。
【００８５】
例えば、比ｒ１〜ｒ４と周期Ｔを設定する替わりに時間Ｔ１〜Ｔ４を直接設定したり、第１マルチ動作時の周期と第２マルチ動作時の周期とを異なる値にしてもよい。
【００８６】
また、第１グループの画像処理モジュールと第２グループの画像処理モジュールとは、プロセッサ２３の処理能力や提供する画像処理に応じて、上記と異なる組み合わせを用いてもよい。
【符号の説明】
【００８７】
１０  メインコントローラ
１１、２４、２７０  バス
１２  操作パネル
１３  スキャナ
１５  通信部
１６  メモリ
２０  画像処理装置
１４  プリントエンジン
２１  印刷画像処理部
２２  スキャン画像処理部
２３  ＭＰＵ
２５、３３  ＤＭＡＣ
２６  プロセッサインターフェイスモジュール
２６０、２８０、２９０  制御部
２６１〜２６６、２８１、２８２、２９１、２９２  バッファメモリ
２７２  調停回路
２７  ハブ
２７１  バスコントローラ
２８  画像回転モジュール
２８３、２９３  データ処理部
２９、３０、３１、３８  画像処理モジュール
３２  プリントエンジンインターフェイスモジュール
３４  スキャナインターフェイスモジュール
３５  ＪＰＥＧ圧縮モジュール
３６  ＪＰＥＧ伸長モジュール
３７  ハーフトーン処理モジュール
４０  第１グループバス要求選択部
５０  第２グループバス要求選択部
４１、５１  優先度別振分部
４２〜４４、５２〜５４  キュー
４５、５５  優先制御部
６０  許可時間帯制御部
６１、６２  ＩＤ／優先度テーブル記憶部
６３  許可時間帯記憶部
６４  許可時間帯設定部
６５、６６  レジスタ
６７  オアゲート
６８、７３  カウンタ
６９、７４  ＲＳフリップフロップ
７０  セレクタ
７１、７５  アンドゲート
７２、７６  コンパレータ
ＣＬＫ  クロック
ＰＲＱ  第１グループバス要求情報
ＳＲＱ  第２グループバス要求情報
【図１】
2014107585.tif 000003
【図２】
2014107585.tif 000004
【図３】
2014107585.tif 000005
【図４】
2014107585.tif 000006
【図５】
2014107585.tif 000007
【図６】
2014107585.tif 000008
【図７】
2014107585.tif 000009