(57)【特許請求の範囲】
【請求項１】
第１のバスと、
上記第１のバスに接続されたＤＭＡＣ付きのホストプロセッサと、
上記第１のバスに接続された第１の画像メモリと、
第２のバスと、
上記第２のバスに接続されたＤＭＡＣ付きの画像処理プロセッサと、
上記第２のバスに接続された第２の画像メモリと、
上記第１のバスと上記第２のバスとを接続するバスブリッジとを有し、
上記画像処理プロセッサは、上記第２の画像メモリから画像データを読み出して画像処理を行ないその処理結果を上記第２の画像メモリに書き込むパイプライン処理をＤＭＡ転送で行ない、
上記バスブリッジは、上記パイプライン処理のＤＭＡ転送のための割り込み要求をデコードして上記画像処理プロセッサの上記ＤＭＡＣの設定を行ない、上記割り込み要求を上記ホストプロセッサ側には通知しないようにしたことを特徴とする画像処理装置。
【請求項２】
上記第１の画像メモリの画像データが、画像処理対象の画像データとして、上記第２の画像メモリに転送される請求項１記載の画像処理装置。
【請求項３】
画像読取装置がスキャンして生成した画像データを、画像処理対象の画像データとして、当該画像読取装置から上記第２の画像メモリに転送する請求項１記載の画像処理装置。
【請求項４】
上記バスブリッジは、上記画像処理プロセッサからの割り込み要求をデコードするデコード手段と、上記デコード手段からデコード結果を受け取るＤＭＡＣ制御手段とを有し、上記デコード手段は上記パイプライン処理のＤＭＡ転送のための割り込み要求が上記ホストプロセッサ側に通知するのを禁止し、上記ＤＭＡＣ制御手段が、上記パイプライン処理のＤＭＡ転送のための割り込み要求に基づいて上記画像処理プロセッサの上記ＤＭＡＣの設定を行なう請求項１〜３のいずれかに記載の画像処理装置。
【請求項５】
上記画像処理プロセッサ側に入力されるページ単位の画像データまたは上記画像処理プロセッサ側から出力されるページ単位の画像データをＤＭＡ転送するために割り込み要求を上記ホストプロセッサに通知する請求項１〜４のいずれかに記載の画像処理装置。
【請求項６】
上記画像処理プロセッサ側に入力されるバンド単位の画像データまたは上記画像処理プロセッサ側から出力されるバンド単位の画像データをＤＭＡ転送するために割り込み要求を上記ホストプロセッサに通知する請求項１〜４のいずれかに記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像処理装置に関し、画像データに対して繰り返し画像処理を行う際にＤＭＡ転送を効率よく行おうとするものである。
【背景技術】
【０００２】
図１は、従来の画像処理装置を示しており、この図において、画像処理装置１０は、ホストＣＰＵ１１および画像処理プロセッサ１２を含んで構成される。ホストＣＰＵ１１は全般的なデータ処理を行ない、画像処理プロセッサ１２は画像処理専用のデータ処理を行う。ホストＣＰＵ１１および画像処理プロセッサ１２は拡張バス（ネットワーク）１３に接続され、ＤＭＡにより拡張バス１３を介してデータ転送を行えるようになっている。ホストＣＰＵ１１はページメモリ１４を利用し、画像処理プロセッサ１２はバッファメモリ１５を利用する。
【０００３】
画像処理プロセッサ１２は、バッファメモリ１５に処理対象の画像データを書き込み、例えばパイプライン処理により複数の画像処理を行う。まず、バッファメモリ１５に書き込まれている画像データを読み出して第１の画像処理を行ない、その処理結果をバッファメモリ１５に書き込む。こののち、第１の画像処理の処理結果をバッファメモリ１５から読み出して第２の画像処理を行う。以下、同様にして最後の画像処理の処理結果をバッファメモリ１５に書き込んで、その後、出力する。この処理は、典型的にはバンド単位で行われるが、ページ単位で行っても良い。バッファメモリ１５は典型的にはＤＤＲメモリで構成される。
【０００４】
ところで、画像処理プロセッサ１２がバッファメモリ１５にＤＭＡで読み書きを行う際に、その都度、割り込み信号を生成してホストＣＰＵ１１に通知してＤＭＡ設定を行う必要があり、このため、ホストＣＰＵ１１の処理にオーバーヘッドが生じていた。
【０００５】
画像処理プロセッサ１２がホストＣＰＵ１１へ割り込み信号を発生させる理由を次に説明する。画像処理プロセッサ１２はＤＭＡＣを内蔵しており、このＤＭＡＣによりバッファメモリ上の中間ストリームを自由に読み書きできるようになっている。ところが、このアドレスコントロールはバンド単位処理では複雑であり、画像処理専用プロセッサ（例えばＳＩＭＤ型プロセッサ）で処理するよりもホストＣＰＵ１１として使用する汎用ＣＰＵのほうが、プログラミングがし易い。そのために、ホストＣＰＵ１１では画像処理専用プロセッサの割り込み信号に呼応して計算した中間ストリーム・アドレスを画像処理専用プロセッサのＤＭＡＣに設定していた。
【０００６】
この他、画像処理プロセッサ１２がホストＣＰＵ１１へ割り込み信号を発生させる理由は、画像処理プロセッサ１２における画像処理が終了したときに、ホストＣＰＵ１１へデータ入出力するためのものである。
【０００７】
なお、この発明と関連する先行技術としては特許文献１がある。
【０００８】
特許文献１では、バスアダプタを介して本体ＰＣＩバスに拡張ＰＣＩバスを接続し、拡張ＰＣＩバスに接続された入出力デバイスから割り込み信号が発生したときに、バスアダプタがどの入出力デバイスから割り込み信号が発生させられたかをＣＰＵに通知することを提案している。
【０００９】
しかしながら、この提案のように、システムが拡張されるたびにホストＣＰＵへ割り込み信号の発生確率が増加することは、システム全体のパフォーマンスを低下させることに他ならない。
【特許文献１】特開平１０−２１１８２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
この発明は、以上の事情を考慮してなされたものであり、複数の画像処理ごとの画像データの読み出し書き込み処理に伴うＤＭＡ転送時の割り込み信号の通知によるホストＣＰＵの処理オーバーヘッドを解消することを目的としている。換言すれば、ホストＣＰＵへの割り込み発生回数を削減し、本当に必要な割り込みのみ発生させることで、システム全体のパフォーマンスを向上させることを目的としている。
【課題を解決するための手段】
【００１１】
この発明によれば、上述の目的を達成するために、特許請求の範囲に記載のとおりの構成を採用している。ここでは、発明を詳細に説明するのに先だって、特許請求の範囲の記載について補充的に説明を行なっておく。
【００１２】
すなわち、この発明の一側面によれば、上述の目的を達成するために、画像処理装置に：第１のバスと；上記第１のバスに接続されたＤＭＡＣ（ＤＭＡコントローラ）付きのホストプロセッサ（ホストＣＰＵともいう）と；上記第１のバスに接続された第１の画像メモリと；第２のバスと；上記第２のバスに接続されたＤＭＡＣ付きの画像処理プロセッサと；上記第２のバスに接続された第２の画像メモリと；上記第１のバスと上記第２のバスとを接続するバスブリッジとを設け、上記画像処理プロセッサは、上記第２の画像メモリから画像データを読み出して画像処理を行ないその処理結果を上記第２の画像メモリに書き込むパイプライン処理をＤＭＡ転送で行ない、上記バスブリッジは、上記パイプライン処理のＤＭＡ転送のための割り込み要求をデコードして上記画像処理プロセッサの上記ＤＭＡＣの設定を行ない、上記割り込み要求を上記ホストプロセッサ側には通知しないようにしている。
【００１３】
この構成においては、パイプライン処理の各ストリームのＤＭＡ転送ごとにホストプロセッサに割り込み要求が通知されず、ホストプロセッサのオーバーヘッドが削減される。
【００１４】
この構成において、典型的には、上記第１の画像メモリの画像データが、画像処理対象の画像データとして、上記第２の画像メモリに転送されて、パイプライン処理される。
【００１５】
また、画像読取装置がスキャンして生成した画像データを、画像処理対象の画像データとして、当該画像読取装置から上記第２の画像メモリに転送することもある。
【００１６】
また、上記バスブリッジは、例えば、上記画像処理プロセッサからの割り込み要求をデコードするデコード手段と、上記デコード手段は、からデコード結果を受け取るＤＭＡＣ制御手段とを有し、上記デコード手段は上記パイプライン処理のＤＭＡ転送のための割り込み要求が上記ホストプロセッサ側に通知するのを禁止し、上記ＤＭＡＣ制御手段が、上記パイプライン処理のＤＭＡ転送のための割り込み要求に基づいて上記画像処理プロセッサの上記ＤＭＡＣの設定を行なう。
【００１７】
また、典型的には、上記画像処理プロセッサ側に入力されるページ単位の画像データまたは上記画像処理プロセッサ側から出力されるページ単位の画像データをＤＭＡ転送するために割り込み要求を上記ホストプロセッサに通知する。また、上記画像処理プロセッサ側に入力されるバンド単位の画像データまたは上記画像処理プロセッサ側から出力されるバンド単位の画像データをＤＭＡ転送するために割り込み要求を上記ホストプロセッサに通知するようにしてもよい。
【００１８】
この発明の上述の側面および他の側面は特許請求の範囲に記載され、以下の実施例等を用いて詳細に説明される。
【発明の効果】
【００１９】
この発明によれば、パイプライン処理の各ストリームのＤＭＡ転送ごとにホストプロセッサに割り込み要求が通知されず、ホストプロセッサのオーバーヘッドが削減される。つまり、前述のバスブリッジはホストＣＰＵと画像処理プロセッサ間のデータ入出力に関する割り込みは画像処理プロセッサからホストＣＰＵへ発生させるが、画像処理プロセッサ側のみのＤＭＡ転送に関する割り込みはブリッジによってホストへは通知されない。
【発明を実施するための最良の形態】
【００２０】
以下、この発明の実施例について説明する。
【００２１】
図２は、この発明の実施例の画像処理装置の構成を全体として示しており、この図において実施例の画像処理装置１００は、ホストＣＰＵ１０１、ホストＣＰＵ１０１用のページメモリ１０２、バス１０３、バスブリッジ１０４、画像処理プロセッサ１０５、画像処理プロセッサ用にページメモリ１０６等を含んで構成されている。ホストＣＰＵ１０１および画像処理プロセッサ１０６はそれぞれＤＭＡＣ１０１ａおよび１０５ａを内蔵している。バスブリッジ１０４は、バス１０３を画像処理側のバスに結合するためのものであり、さらにデコーダ１０４ａおよびＤＭＡＣ制御回路１０４ｂを具備している。
【００２２】
デコーダ１０４ａは、１ページ分の画像処理が終了したときに割り込み要求をホストＣＰＵ１０１に通知し、１バンド分の処理が終了したときの割り込み要求や各ストリームの処理が終了したときの割り込み要求はホストＣＰＵ１０１に通知しないようになっている。また、１バンド分の処理が終了したときの割り込み要求や各ストリームの処理が終了したときの割り込み要求をデコードしてＤＭＡＣ制御回路１０４ｂに供給する。ＤＭＡＣ制御回路１０４ｂはデコード結果に基づいて画像処理プロセッサ１０５のＤＭＡＣ１０５ａを設定する。
【００２３】
つぎに実施例の動作について説明する。
【００２４】
なお、画像処理対象の画像データは画像読取装置からのスキャンデータ（１）や、ホストＣＰＵ１０１側のページメモリ１０２からの画像データ（２）であり、これがＤＭＡ転送により画像処理プロセッサ１０５側のページメモリ１０６に書き込まれる。
【００２５】
以下では、スキャンデータの処理を説明するが、ホストＣＰＵ１０１側の画像データでも同様に処理される。
【００２６】
［ステップＳ１］：画像処理プロセッサ１０１はスキャンデータを１ページ分、ページメモリへ溜める。
［ステップＳ２］：バスブリッジ１０４のＤＭＡＣ制御回路１０４ｂが、画像処理プロセッサ１０５のＤＭＡＣ１０５ａにパラメータ設定を行う。
［ステップＳ３］：画像処理プロセッサ１０５のＤＭＡＣ１０５ａはページメモリ１０６から、１バンド分のデータを転送する。
［ステップＳ４］：画像処理プロセッサ１０５は、処理を開始、各ストリーム（画像データの流れ）が終わる毎に、バスブリッジ１０４へ割り込み要求を供給する。
［ステップＳ５］：バスブリッジ１０４は、割り込み要求をデコードして、１ページ処理が完了した時にのみ、割り込みをホストＣＰＵ１０１側へ転送する。
［ステップＳ６］：１ページの処理が完了していないで、１バンド分の終了またはある各ストリームの処理が完了した割り込みと認識したとき、バスブリッジ１０４のＤＭＡＣ制御回路１０４ｂは、画像処理プロセッサ１０５のＤＭＡＣ１０５ａを制御して、つぎのバンドデータまたはストリームを転送する指示を出す。
【００２７】
図３は、一連の処理の流れを模式的に示すものである。図３に示すように、ページ単位の画像データが入力され、画像処理プロセッサ１０５がバンドごとにパイプライン処理を行ない、各ストリームを処理Ａ、Ｂ、Ｃの順で処理する（処理はＡ、Ｂ、Ｃのみ示したが、その個数はこれに限定されない）。すべてのバンドについて処理が終了して１ページ分の処理済み画像データが生成されたら、例えばホストＣＰＵ１０１に割り込み要求を通知してＤＭＡで当該１ページ分の画像データを出力する。
【００２８】
このようにすることにより、図４に示すように、各ストリームのＤＭＡのための割り込み要求はバスブリッジ１０４を越えて、最後の１ページ分のデータを出力するときにバスブリッジ１０４を越えてホストＣＰＵに通知され当該１ページ分の画像データがホストＣＰＵ１０１側にＤＭＡ転送される。
【００２９】
従来では、図５に示すようにストリーム毎に割り込み要求がホストＣＰＵに供給されていて、ＣＰＵのオーバーヘッドとなっていた。
【００３０】
このように、バスブリッジ（ハードウェア）で割り込みをデコードし処理をする事で、ホストＣＰＵが割り込みを処理する必要がなくなり、負荷が軽減され、その分他のアプリケーションの処理をすることができる。また、バスブリッジ（ハードウェア）が割り込み処理を行うことで、割り込み処理が短縮し、生産性が向上する。とくにオーバーラップ処理や回転処理に好適である。
【００３１】
なお、この発明は上述の実施例に限定されるものではなくその趣旨を逸脱しない範囲で種々変更が可能である。例えば、上述の例では、１ページ分の画像データの処理が終了したときにホストＣＰＵに割り込み要求を通知してＤＭＡ転送を行うようにしたが、１バンド分の画像データの処理が終了したときにホストＣＰＵに割り込み要求を通知するようにしても良い。もちろん、１バンドを処理単位として画像処理プロセッサに供給するようにしても良い。また、バスブリッジは専用回路（＝ハードウェア）でもよいし、ＣＰＵコアを内蔵した回路でもよい。更に、本バスブリッジによってホストＣＰＵレスの構成、つまりスタンドアロンの画像処理プロセッサ・システムも構成可能である。すなわち、画像処理装置を：第１のバスと；上記第１のバスに接続された第１の画像メモリと；第２のバスと；上記第２のバスに接続されたＤＭＡＣ付きの画像処理プロセッサと；上記第２のバスに接続された第２の画像メモリと；上記第１のバスと上記第２のバスとを接続するバスブリッジとを設け、；上記画像処理プロセッサは、上記第２の画像メモリから画像データを読み出して画像処理を行ないその処理結果を上記第２の画像メモリに書き込むパイプライン処理をＤＭＡ転送で行ない；上記バスブリッジは、上記パイプライン処理のＤＭＡ転送のための割り込み要求をデコードして上記画像処理プロセッサの上記ＤＭＡＣの設定を行なうようにしてもよい。
【図面の簡単な説明】
【００３２】
【図１】従来の画像処理装置を説明するブロック図である。
【図２】この発明の実施例の画像処理装置を全体として示すブロック図である。
【図３】上述実施例の処理の流れを説明する図である。
【図４】上述実施例の割り込み要求の届く範囲を説明する図である。
【図５】従来例の割り込み要求の届く範囲を説明する図である。
【符号の説明】
【００３３】
１０       画像処理装置
１１       ホストＣＰＵ
１２       画像処理プロセッサ
１３       拡張バス
１４       ページメモリ
１５       バッファメモリ
１００    画像処理装置
１０１    ホストＣＰＵ
１０２    ページメモリ
１０３    バス
１０４    バスブリッジ
１０４ａ               デコーダ
１０４ｂ               ＤＭＡＣ制御回路
１０５    画像処理プロセッサ
１０６    ページメモリ
【図１】
0004687553.tif 000002
【図２】
0004687553.tif 000003
【図３】
0004687553.tif 000004
【図４】
0004687553.tif 000005
【図５】
0004687553.tif 000006