説明

画像処理装置及びそのプログラム

【課題】リコンフィギュラブルプロセッサの前段のタイミング調整回路に大容量のメモリを搭載させることなく、そのプロセッサを用いた円滑な画像処理を実現すること。
【解決手段】コンフィギュラブルプロセッサのセルを連係状態を維持する第1グループと連係状態を切り替える第2グループとに分ける。そして、画像データに施すべき一連の画像処理のうち最初の画像処理を第1グループのセルにその連携状態を維持しながら実行させる一方、後続する残りの画像処理を第2グループのセルにその連携状態を切り替えながらシーケンシャルに実行させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複合機に内蔵される画像処理装置に関し、特に、ダイナミックリコンフィギュラブルプロセッサを搭載した画像処理装置に関する。
【背景技術】
【0002】
複合機が原稿をスキャンして得た画像データは、色変換、サブサンプリング、文字/イメージ分離、平滑化、エッジ強調、圧縮などといった各種画像処理を施した上で後段のデバイスへ出力される。これらの処理は高速であることが要求されるため、これまでの複合機は画像処理に特化した回路構成を持つASIC(Application Specific Integrated Circuit)を搭載するのが一般的であったが、最近では、このASICをダイナミックリコンフィギュラブルプロセッサで代用する試みが見られる。
【0003】
リコンフィギュラブルプロセッサは、アレイ状に配置されたALU(Arithmetic Logic Unit)などの演算回路と演算回路間を接続するスイッチとから構成される。リコンフィギュラブルプロセッサの演算回路は、加減算、NAND、NORなどといった各種演算が可能であり、それらのうちどの演算を選択するかはコンフィギュレーションレジスタと呼ばれるメモリの記憶内容により決定される。また、演算の入力信号をどこから得るか、あるいは演算の出力をどこに出力するかなどはスイッチの接続により決まり、スイッチの接続もコンフィギュレーションレジスタの記憶内容により決定される。よって、コンフィギュレーションレジスタの記憶内容を順次書き換えていくことにより、各演算回路間の連携を目的の処理に応じて遷移させていくことが可能である。そして、各種リコンフィギュラブルプロセッサの中でも処理の実行中でのコンフィギュレーションレジスタの書き換えを可能としたものを特に「ダイナミックリコンフィギュラブルプロセッサ」と呼ぶ(特許文献1乃至3)。
【0004】
複合機に搭載されたリコンフィギュラブルプロセッサの利用者は、コンフィギュレーションレジスタの記憶内容の書き換えの手順を画像データに施す一連の各処理の流れにあわせて記述したプログラムを自ら作成し、そのプログラムをリコンフィギュラブルプロセッサに読み込ませることによりカスタマイズを行う。
【特許文献1】特開2004−334429号公報
【特許文献2】特開2005−27767号公報
【特許文献3】特開2005−44329号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
ところで、複合機に搭載されるリコンフィギュラブルプロセッサにはスキャナ等に原稿を光電変換させて得たラスタデータが画像処理対象として入力されるが、スキャナによる光電変換処理の処理速度はリコンフィギュラブルプロセッサによる画像処理の処理速度よりも高速であるため、この種の複合機の多くは、両者の処理速度の差を吸収するためのタイミング調整回路をリコンフィギュラマブルプロセッサの前段に備え付ける構成をとるのが一般的であった。このタイミング調整回路は、スキャナより入力される一又は複数枚分のラスタデータをバンドと呼ばれる副走査方向の所定の画素幅をもつ狭小なラスタデータに分割し、リコンフィギュラブルプロセッサによる画像処理の進捗に合わせて各バンドのラスタデータを同プロセッサへ1つずつ入力する役割を果たす。当然ながら、タイミング調整回路には、入力待ちのラスタデータを蓄積記憶しておくための比較的大容量のメモリを搭載させねばならず、これが画像形成装置の高コスト化を招く要因の1つとなっていた。
【0006】
本発明は、このような背景の下に案出されたものであり、リコンフィギュラブルプロセッサの前段のタイミング調整回路に大容量のメモリを搭載させることなく、そのプロセッサを用いた円滑な画像処理を実現する仕組みを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の好適な態様である画像処理装置は、自身の外部にある各素子のうちいずれかと結線され得る入力端子と出力端子、前記入力端子から入力されるデータに各種演算のうちいずれかを行って前記出力端子から出力させる演算器、入出端子と出力端子の各々と結線させる外部の素子と前記演算器の演算内容とを指定するデータであるコンフィギュレーションデータを記憶するためのメモリ、及び前記メモリに記憶されるコンフィギュレーションデータを読み出し、読み出したコンフィギュレーションデータが指定する素子と前記両端子の各々を結線させると共にそのコンフィギュレーションデータが指定する演算内容の演算を前記演算器に行わせるデータ読出器をそれぞれ有する素子である各セルを集めたセル群と、予め設定された一連の画像処理の処理対象となる1つの画像データを分割して得た各分割画像データを、前記セル群の中からデータの入力先として特定した一又は複数のセルへ順次入力する入力手段と、前記セル群の第1のグループの各セルを前記一連の画像処理の最初の一又は複数の画像処理である前段画像処理を実行し得るように連携させると共に第1のグループと異なる第2のグループの各セルをその前段画像処理に後続する各種の画像処理である後段画像処理を実行し得るように連携させるためのコンフィギュレーションデータのセットを、後段画像処理の種別毎に記憶した記憶手段と、予め設定された順序に従って前記記憶手段からセットを選択し、選択したセットを成すコンフィギュレーションデータの各々で前記セル群の各セルのメモリの記憶内容を書き換えていくことにより前記第1のグループの各セルの連携状態を維持したしたまま前記第2のグループの各セルの連携状態を順次切り替え、第1のグループの各セルによる前段画像処理と第2のグループの各セルによるそれらの連携状態毎に個別の後段画像処理とを前記セル群に並列して実行させるコンフィギュレーション制御手段とを備える。
【0008】
この態様において、前記入力手段は、前記セル群の第1のグループの中の一又は複数のセルをデータの入力先として特定し、特定したセルへ各分割画像データを順次入力するようにしてもよい。
【0009】
また、処理途中のデータを記憶するバッファと、前記第1のグループの各セルにより前段画像処理が施された前段画像処理済みデータを前記バッファに記憶させる手段と、前記バッファから前段画像処理済みデータを読み出し、読み出した画像処理済みデータを前記セル群の第2のグループの各セルの中からデータの入力先として特定した一又は複数のセルへ入力する手段とを備えてもよい。
【0010】
また、第1の連携状態となっている第2のグループの各セルにより後段画像処理が施された第1段階後段画像処理済みデータを前記バッファに記憶させる手段と、前記第2のグループの各セルの連携状態が前記コンフィギュレーション制御手段によって第1の連携状態から第2の連携状態に切り替えられると、前記バッファから第1段階後段画像処理済みデータを読み出し、読み出した画像処理済みデータを当該第2の遷移状態となっている第2のグループの各セルの中からデータの入力先として特定した一又は複数のセルへ入力する手段を更に備えてもよい。
【0011】
また、前記第1のグループの各セルにより実行される前段画像処理は、前記入力手段から順次入力される分割画像データの色空間を変換する色空間変換画像処理を含んでもよい。
【0012】
また、前記第1のグループの各セルにより実行される前段画像処理は、前記色空間変換画像処理の施された分割画像データをサブサンプリングするサブサンプリング処理を更に含んでもよい。
【0013】
前記セル群は、隣接する複数のセル毎にグループ化されたセルアレイを形成していてもよい。
【0014】
また、前記セル群を成す各セルが有する演算器は、加減算回路、乗算回路、否定論理積回路、排他的論理和回路、定数出力回路、比較回路、ディレイ回路、ビット演算回路、及びそれらのうちいずれかを選択する選択回路を有し、前記コンフィギュレーションデータは、前記選択回路に選択させる回路を指定するとよい。
【0015】
また、前記セル群を成す各セルが有する入力端子の各々は、自身の外部にあるセルその他の素子にそれぞれ繋がる入力線と、それらの入力線のうちのいずれかと接続されるスイッチを有し、前記コンフィギュレーションデータは、前記スイッチと接続させる入力線を指定するようにするとよい。
【0016】
前記セル群を成す各セルが有する出力端子の各々は、自身の外部にあるセルその他の素子にそれぞれ繋がる出力線と、それらの出力線のうちのいずれかと接続されるスイッチを有し、前記コンフィギュレーションデータは、前記スイッチと接続させる出力線を指定するようにするとよい。
【0017】
本発明の別の好適な態様であるプログラムは、自身の外部にある各素子のうちいずれかと結線され得る入力端子と出力端子、前記入力端子から入力されるデータに各種演算のうちいずれかを行って前記出力端子から出力させる演算器、入出端子と出力端子の各々と結線させる外部の素子と前記演算器の演算内容とを指定するデータであるコンフィギュレーションデータを記憶するためのメモリ、及び前記メモリに記憶されるコンフィギュレーションデータを読み出し、読み出したコンフィギュレーションデータが指定する素子と前記両端子の各々を結線させると共にそのコンフィギュレーションデータが指定する演算内容の演算を前記演算器に行わせるデータ読出器をそれぞれ有する素子である各セルを集めたセル群と、予め設定された一連の画像処理の処理対象となる1つの画像データを分割して得た各分割画像データを、前記セル群の中からデータの入力先として特定した一又は複数のセルへ順次入力する入力手段と、前記セル群の第1のグループの各セルを前記一連の画像処理の最初の一又は複数の画像処理である前段画像処理を実行し得るように連携させると共に第1のグループと異なる第2のグループの各セルをその前段画像処理に後続する各種の画像処理である後段画像処理を実行し得るように連携させるためのコンフィギュレーションデータのセットを、後段画像処理の種別毎に記憶した記憶手段とを備えたコンピュータに、予め設定された順序に従って前記記憶手段からセットを選択し、選択したセットを成すコンフィギュレーションデータの各々で前記セル群の各セルのメモリの記憶内容を順次書き換えることにより前記第1のグループの各セルの連携状態を維持したしたまま前記第2のグループの各セルの連携状態を切り替え、第1のグループの各セルによる前段画像処理と第2のグループの各セルによるそれらの連携状態毎に個別の後段画像処理とを前記セル群に並列して実行させるコンフィギュレーション制御機能を実現させる。
【発明の効果】
【0018】
本発明によると、コンフィギュラブルプロセッサの前段のタイミング調整回路に大容量のメモリを搭載させることなく、そのプロセッサを用いた円滑な画像処理を実行させることができる。
【発明を実施するための最良の形態】
【0019】
(発明の実施の形態)
本願発明の実施形態について説明する。
本実施形態の特徴は、リコンフィギュラブルプロセッサの一部のセルのグループの連携状態を一連の画像処理の中の最初の一又は複数の画像処理を実行し得るように維持したまま、残りのセルのグループの連携状態をその後段の各画像処理に合わせて順次切り替えていくことにより、最初の画像処理の継続的な実行とその後段の各画像処理のシーケンシャルな実行とを1つのリコンフィギュラブルプロセッサに並列して行わせるようにした点である。
【0020】
図1は、本実施形態にかかる画像処理装置のハードウェア概略構成を示す図である。この画像処理装置1は、複合機などの画像形成装置に内蔵され、スキャナなどの光学系デバイスに原稿を走査させて得た画像データに各種画像処理を順次施してから印字エンジンなどの画像形成デバイスへ出力する。
【0021】
この画像処理装置1は、外部インターフェース11、データパスプロセッサ12、コンフィギュレーションメモリ13、コントローラプロセッサ14、DRAM(Dynamic Random Access Memory)インターフェース15、PCIインターフェース16、タイミング調整回路17、及びDMAC(Direct Memory Access Controller)18を備える。これら各部はバスを介して接続され、DMAC18による調停の下に各種データの遣り取りを行う。
【0022】
各部の機能を説明すると、まず、PCIインターフェース16は、図示しない制御部との間の各種データの遣り取りを司る。外部インターフェース11は、原稿を光学系デバイスに走査させて得た1または複数ページ分のラスタデータを副走査方向の所定画素幅(この画素幅を「バンド」と呼ぶ)毎に分割して得たバンド画像データを順次入力する。また、この外部インターフェース11は、各種画像処理を施したバンド画像データを自装置から印刷エンジンへ順次出力する。
データパスプロセッサ12は、「セル」と呼ばれる回路素子をマトリクス状に並べたリコンフィギュラブルプロセッサである。
【0023】
図2、図3は、データパスプロセッサ12の構成の詳細を示す図である。データパスプロセッサ12は、図2に示すように、連携して動作する64個のセル30を縦横に8列ずつ並べてなるセルアレイを有する。各セル30の各々は、図示しないコンフィギュレーションバスを介してコンフィギュレーションメモリ13と繋がっており、また、各セル30同士は、図示しないデータバスを介して繋がっている。
【0024】
図3に示すように、セル30の各々は、演算器31、選択器32、演算結果保持メモリ33、入力端子34、出力端子35、コンフィギュレーションレジスタ36、読出器37を備えてなる。演算器31は、加減算回路、乗算回路、否定論理積回路、排他的論理和回路、マルチプレクサなどの各種演算回路を含んでいる。演算器31は、入力端子34から供給されるデータを選択器32により選択された自身の演算回路へ導き、その演算回路の演算結果として得られたデータを演算結果保持メモリ33へ供給する。演算結果保持メモリ33は、複数のフリップフロップを有しており、演算器31より供給されるデータを自身のフリッププロップに1クロックサイクルに渡って保持した後、出力端子35へ供給する。入力端子34は、自セル30の他の各セル30へとそれぞれ繋がる外部データバスのうち1つを選択して演算器31の入力側と接続するスイッチを有している。また、出力端子35は、自セル30の他の各セル30へとそれぞれ繋がる外部データバス、及び自身の演算結果保持メモリ33の入力側へと繋がるフィードバックデータバスのうち1つを選択して演算結果保持メモリ33の出力側と接続するスイッチを有している。この出力端子35のスイッチがフィードバックデータバスと繋がっている間は演算結果保持メモリ33へデータがフィードバックされるため、自セル30の演算器31による演算結果として得られたデータを複数サイクルクロックに渡って保持しておくことも可能である。
【0025】
コンフィギュレーションレジスタ36は、コンフィギュレーションバスが接続されており、コンフィギュレーションメモリ13からこのコンフィギュレーションバスを介して伝送されてくるコンフィギュレーションデータを記憶する。
【0026】
コンフィギュレーションデータは、演算器31の演算内容と両端子のスイッチの接続内容とを指定するデータである。演算器31の演算内容を指定するデータには、選択器32に選択させる演算回路を指定するデータのほか、選択された回路が入力データに定数を作用させるもの(例えば、乗算回路)であった場合におけるその定数を指定するデータも含まれる。また、両端子のスイッチの接続内容を指定するデータには、入力端子34へのデータの入力先となるセル30を指するデータ、及び出力端子35からのデータの出力先となるセル30を指定するデータのほか、出力端子35から演算結果保持メモリ33へデータをフィードバックさせる場合におけるそのフィードバック回数を指定するデータを含む。
【0027】
読出器37は、コンフィギュレーションレジスタ36に新たなコンフィギュレーションデータが書き込まれるたびにそのコンフィギュレーションデータを読み出し、読み出したコンフィギュレーションデータを基に演算器31の演算内容と両端子のスイッチの接続内容を切り替える。
【0028】
図1において、DRAMインターフェース15にはDRAM20が装着される。図に示すように、このDRAMインターフェース15に装着されるDRAM20は、コンフィギュレーションカスタマイズプログラムをコンパイルして得られるコンフィギュレーションデータの各セットを記憶するデータセット記憶領域のほか、外部インターフェース11から順次入力されるバンド画像データとそれらの各々についてデータパスプロセッサ12のセルアレイが各種画像処理を実行した段階で得られる各画像処理済みのバンド画像データをそれぞれ記憶する処理別バッファ領域が確保される。
【0029】
コンフィギュレーションカスタマイズプログラムは、セルアレイの各連携状態とその遷移の基本的順序のローテーションとをC言語などの高級言語により記したプログラムである。
図4、図5は、コンフィギュレーションカスタマイズプログラムの構造を示す図である。コンフィギュレーションカスタマイズプログラムは、図4に示すように、複数のセルアレイ連携状態制御プログラムを並べたものである。セルアレイ連携状態制御プログラムの各々は、図5に示すように、各セル30の演算器31の演算内容と両端子のスイッチの接続内容とを各セル30毎に個別に定義したセル別制御プログラム群からなる。
【0030】
コンフィギュレーションカスタマイズプログラムの作成は、図6に示すような手順で行なわれる。
まず、色変換→サブサンプリング→文字/イメージ分離→平滑化→エッジ強調→圧縮といったように、データパスプロセッサ12を用いて画像データに施す各種画像処理とその処理の基本的な順序のローテーションとを確定する(S10)。
【0031】
次に、ステップ10で特定した一連の画像処理を、光学系デバイスから外部インターフェース11への画像データの供給の速度に追随し得るような比較的軽い処理負荷となる最初の一又は複数の画像処理(以下、この処理を「前段画像処理」と呼ぶ)と、その後に続く画像処理(以下、この処理を「後段画像処理」と呼ぶ)に分ける(S20)。例えば、色変換→サブサンプリング→文字/イメージ分離→平滑化→エッジ強調→圧縮であれば、最初の色変換とサブサンプリングの2つの画像処理は、画像データの供給に追随し得るような軽い処理負荷であるため前段画像処理に、その後に続く、文字/イメージ分離、平滑化、エッジ強調、圧縮の4つの画像処理は、画像データの供給に追随し得ないような重い処理負荷となるため段画像処理に分けることが望ましい。
【0032】
一連の画像処理を前段画像処理と後段画像処理に分けた後は、データパスプロセッサ12を成す各セル30を、前段画像処理を実行させるグループ(以下、「第1グループ」と呼ぶ)と、後段画像処理を実行させるグループ(以下、「第2グループ」と呼ぶ)とに分ける(S30)。
続いて、画像処理を実現するために必要なセルアレイの連携状態、つまり、各セル30の各々の演算器31の演算内容と両端子のスイッチの接続内容とを特定し、その特定結果を基に連携状態毎のセル別制御プログラム群を個別に作成する(S40)。
【0033】
ここで、冒頭にも示したように、本実施形態の特徴は、リコンフィギュラブルプロセッサの一部のセル30のグループの連携状態を一連の画像処理の最初の一又は複数の画像処理、つまり、前段画像処理を実行し得るように維持したまま、残りのセルのグループの連携状態をそれに後続する後段画像処理に合わせて順次切り替えていくことにより、前段画像処理の継続的な実行と後段画像処理のシーケンシャルな実行とを1つのリコンフィギュラブルプロセッサに並列して行わせるようにした点にある。
【0034】
よって、例えば、色変換→サブサンプリング→文字/イメージ分離→平滑化→エッジ強調→圧縮の一連の処理のうち、色変換とサブサンプリングが前段画像処理に、文字/イメージ分離、平滑化、エッジ強調、及び圧縮が後段画像処理に分けられている場合、第1グループの各セル30に色変換とサブサンプリングを、第2グループの各セル30に文字/イメージ分離を夫々実行させ得るような連携状態を実現する第1のセル別制御プログラム群、第1グループの各セル30に色変換とサブサンプリングを、第2グループの各セル30に平滑化を夫々実行させ得るような連携状態を実現する第2のセル別制御プログラム群、第1グループの各セル30に色変換とサブサンプリングを、第2グループの各セル30にエッジ強調を実行させ得るような連携状態を実現する第3のセル別制御プログラム群、第1グループの各セル30に色変換とサブサンプリングを、第2グループの各セル30に圧縮を夫々実行させ得るような連携状態を実現する第4のセル別制御プログラム群の計4セットのセル別制御プログラム群を個別に作成する必要がある。要するに、前段画像処理と各種の後段画像処理の組み合わせと同じ数のセル別制御プログラム群が作成されるのである(図4参照)。
【0035】
最後に、作成した各セル別制御プログラム群をコンパイルして得たコンフィギュレーションデータの各セットを、後段画像処理の基本的な順序に合わせてDRAM20のデータセット記憶領域に記憶させる(S50)。
後に詳述するように、DRAM20に記憶されたコンフィギュレーションデータのセットは、コントローラプロセッサ14による制御の下にコンフィギュレーションメモリ13を経由して各セル30のコンフィギュレーションレジスタ36へ書き込まれるようになっている。そして、各セル30の演算器31の演算内容と両端子のスイッチの接続内容はコンフィギュレーションレジスタ36に書き込まれたコンフィギュレーションデータに応じて直ちに設定される。よって、各セットのコンフィギュレーションデータによって各セル30のコンフィギュレーションレジスタ36の記憶内容が書き換えられる都度、セルアレイの連携状態も遷移することになる。
【0036】
図1の説明に戻り、コントローラプロセッサ14は、図示しない自身のメモリに記憶されたコントローラ制御プログラムに従って動作する。このコントローラ制御プログラムは、DRAM20のデータセット記憶領域に記憶されたコンフィギュレーションデータのセットを順に選択し、選択したセットのコンフィギュレーションデータの各々でセルアレイの各セル30のメモリの記憶内容を順次書き換えていく機能であるコンフィギュレーション制御機能を実現する。
【0037】
外部インターフェース11は、光学系デバイスから供給されるバンド画像データをタイミング調整回路17へ順次入力する。
【0038】
タイミング調整回路17は、コントローラプロセッサ14の制御によるセルアレイの連携状態の遷移が行われていない間、光学系デバイスから外部インターフェース11を介して供給されてくるバンド画像データをセルアレイの第1のグループのセル30へそのまま供給する。一方、セルアレイの連携状態の遷移が行われている間は、光学系デバイスから供給されてくるバンド画像データを自身に内蔵するメモリに蓄積記憶し、セルアレイの連携状態の遷移が終わると、その蓄積記憶した分も含めたバンド画像データの供給を再開する。
【0039】
このタイミング調整回路17の振る舞いについて、図7を参照して更に説明する。図7は、システムクロック、外部インターフェース11からタイミング調整回路17へ供給されるバンド画像データの入力内容、セルアレイの連携状態の遷移期間、及びタイミング調整回路17からセルアレイへ供給されるバンド画像データの入力内容を示すタイミングチャートである。図に示す「N−3」、「N−2」、「N−1」、「N」、「N+1」は、各々が1ワード分に相当するバンド画像データの入力順を示している。図によると、外部インターフェース11からタイミング調整回路17へは2クロックあたり1ワードのデータが入力され得るようになっており、タイミング調整回路17からセルアレイへは1クロックあたり1ワードのデータが入力され得るようになっていることが分かる。また、セルアレイの連携状態の遷移期間を示す信号は、ハイレベルとなっている時間長の間は、連携状態の遷移が行われており、ローレベルとなっている時間長の間は、連携状態の遷移が行われていないことを示す。
【0040】
図に示すように、このタイミング調整回路17は、セルアレイの連携状態の遷移が行われるまでの間は、外部インターフェース11から供給されるバンド画像データをセルアレイへそのまま供給し、セルアレイの連携状態の遷移が行われている間は、外部インターフェース11から供給されるバンド画像データを自身のメモリに蓄積記憶する。そして、セルアレイの連携状態の遷移が終わると、メモリに蓄積記憶しておいたバンド画像データのセルアレイへの供給を開始する。
【0041】
図8は、本実施形態の特徴的な動作の実行に伴って遷移するセルアレイの連携状態とDRAM20の処理別バッファ領域の記憶内容の一例を示す図である。この例を参照し、本実施形態に特徴的な動作について説明する。なお、以降の説明において、光学系デバイスから外部インターフェース11を経由してタイミング調整回路17へ順次入力されるバンド画像データの各々を、その入力順に、第1バンド画像データ、第2バンド画像データ、第3バンド画像データ・・・と呼ぶ。
【0042】
図に示す連携状態1では、セルアレイの第1グループのセル30が前段画像処理である色変換とサブサンプリングを実行し得る連携状態となる一方、第2グループのセル30が後段画像処理の最初の画像処理である文字/イメージ分離を実行し得る連携状態となる。
この連携状態1が実現されると、タイミング調整回路17から第1グループのセル30へのバンド画像データの入力が開始される。この第1グループの各セル30のうちデータの入力先となる先頭セルは、コンフィギュレーションカスタマイズプログラムにより特定される。第1グループのセル30はタイミング調整回路17から入力されてくる各バンド画像データに色変換とサブサンプリングを施して処理別バッファ領域に記憶する。
【0043】
色変換とサブサンプリングが済んだ第1バンド画像データは処理別バッファ領域に記憶された後に直ちに同領域から読み出され、第2グループのセル30へ入力される。この第2グループの各セル30のうちデータの入力先となる先頭セルは、コンフィギュレーションカスタマイズプログラムにより特定される。第2グループのセル30は第1バンド画像データに文字/イメージ分離を施し、文字/イメージ分離の済んだ第1バンド画像データをその画像データがそれまで記憶されていた処理別バッファ領域に上書きする。
【0044】
文字/イメージ分離の済んだ第1バンド画像データが処理別バッファ領域に記憶されると、セルアレイが連携状態2へと遷移する。この連携状態の遷移が成されている間、タイミング調整回路17による画像データの供給は停止される。また、第1グループのセル30は後続するバンド画像データへの処理を第2グループのセル30と並列して実行しており、図の例では、セルアレイが連携状態2に切り替わる時点において色変換とサブサンプリングの済んだ第2バンド画像データまでが処理別バッファ領域に記憶されている。
【0045】
図に示す連携状態2では、セルアレイの第1グループのセル30は依然として前段画像処理である色変換とサブサンプリングを実行し得る連携状態のままである一方、第2グループのセル30は2番目の後段画像処理である平滑化を実行し得る連携状態に切り替わる。
この連携状態2が実現されると、タイミング調整回路17から第1グループのセル30へのバンド画像データの入力が再開され、第1グループの各セル30はタイミング調整回路17から供給されてくるバンド画像データに色変換とサブサンプリングを施す処理を再開する。なお、第1のグループの各セル30の演算結果保持メモリ33の記憶内容はコンフィギュレーションメモリ13の記憶内容の書き換えがあってもリセットされないため、それら各セル30は各々の演算結果保持メモリ33の記憶内容と前段のセル30から供給されるデータとを用いて処理を円滑に再開することが可能である。
【0046】
そして、文字/イメージ分離の済んだ第1バンド画像データは連携状態2への遷移後に処理別バッファ領域から直ちに読み出され、第2グループのセル30へ入力される。この第2グループの各セル30のうちデータの入力先となる先頭セルは、コンフィギュレーションカスタマイズプログラムにより特定される。
第2グループのセル30は第1バンド画像データに平滑化を施し、平滑化の済んだ第1バンド画像データをその画像データがそれまで記憶されていた処理別バッファ領域に上書きする。
【0047】
平滑化の済んだ第1バンド画像データが処理別バッファ領域に記憶されると、セルアレイが連携状態3へと遷移する。この連携状態の遷移が成されている間、タイミング調整回路17による画像データの供給は再び停止される。また、第1グループのセル30は後続するバンド画像データへの処理を第2グループのセル30と並列して実行しており、図の例では、セルアレイが連携状態3に切り替わる時点において色変換とサブサンプリングが済んだ第3バンド画像データまでが処理別バッファ領域に記憶されている。
【0048】
図に示す連携状態3では、セルアレイの第1グループのセル30は依然として前段画像処理である色変換とサブサンプリングを実行し得る連携状態のままである一方、第2グループのセル30は3番目の後段画像処理であるエッジ強調を実行し得る連携状態に切り替わる。
この連携状態3が実現されると、タイミング調整回路17から第1グループのセル30へのバンド画像データの入力が再開され、第1グループの各セル30はタイミング調整回路17から供給されてくるバンド画像データに色変換とサブサンプリングを施す処理を再開する。
【0049】
そして、平滑化の済んだ第1バンド画像データは連携状態3への遷移後に処理別バッファ領域から直ちに読み出され、第2グループのセル30へ入力される。この第2グループの各セル30のうちデータの入力先となる先頭セルは、コンフィギュレーションカスタマイズプログラムにより特定される。
第2グループのセル30は第1バンド画像データにエッジ強調を施し、エッジ強調の済んだ第1バンド画像データをその画像データがそれまで記憶されていた処理別バッファ領域に上書きする。
【0050】
エッジ強調の済んだ第1バンド画像データが処理別バッファ領域に記憶されると、セルアレイが連携状態4へと遷移する。この連携状態の遷移が成されている間、タイミング調整回路17による画像データの供給は再び停止される。また、第1グループのセル30は後続するバンド画像データへの処理を第2グループのセル30と並列して実行しており、図の例では、セルアレイが連携状態4に切り替わる時点において色変換とサブサンプリングが済んだ第4バンド画像データまでが処理別バッファ領域に記憶されている。
【0051】
図に示す連携状態4では、セルアレイの第1グループのセル30は依然として前段画像処理である色変換とサブサンプリングを実行し得る連携状態のままである一方、第2グループのセル30は4番目の後段画像処理である圧縮を実行し得る連携状態に切り替わる。
この連携状態4が実現されると、タイミング調整回路17から第1グループのセル30へのバンド画像データの入力が再開され、第1グループの各セル30はタイミング調整回路17から供給されてくるバンド画像データに色変換とサブサンプリングを施す処理を再開する。
【0052】
そして、エッジ強調の済んでいる第1バンド画像データは連携状態4への遷移後に処理別バッファ領域から直ちに読み出され、第2グループのセル30へ入力される。この第2グループの各セル30のうちデータの入力先となる先頭セルは、コンフィギュレーションカスタマイズプログラムにより予め指定されている。
第2グループのセル30は第1バンド画像データに圧縮を施し、圧縮の済んだ第1バンド画像データは外部インターフェース11から後段のデバイスへ出力される。
【0053】
以降は、図8に示したような連携状態の遷移が繰り返され、第1グループのセル30による前段画像処理と第2グループのセル30によるシーケンシャルな後段画像処理とが引き続き並列して実行されていくことになる。つまり、第1グループは、自グループの各セル30の連携状態を維持したまま、タイミング調整回路17から供給される各バンド画像データに対して色変換とサブサンプリングを実行する一方、第2グループは、自グループの各セル30の連携状態を、文字/イメージ分離→平滑化→エッジ強調→圧縮と順次切り替えながら、色変換とサブサンプリングの済んだ各バンド画像データに対してそれら一連の処理を実行する。
【0054】
以上説明した本実施形態では、リコンフィギュラブルプロセッサのセル30を連係状態を維持する第1グループと連係状態を切り替える第2グループとに分け、画像データに施すべき一連の画像処理のうち最初の画像処理を第1グループのセル30にその連携状態を維持しながら実行させる一方、後続する残りの画像処理を第2グループのセル30にその連携状態を切り替えながら実行させる。このため、光学系デバイスから外部インターフェース11への画像データの供給の速度に追随し得るような処理負荷の比較的軽い画像処理をこの第1グループのセル30に実行させるような各セル別制御プログラム群を組み込んで画像処理装置1を駆動させるようにすれば、光学系デバイスからのデータの供給と画像処理の間の速度差を吸収するタイミング調整回路17が、ラスタデータ数枚分に及ぶ大容量のデータの蓄積を余儀なくされずに済む。よって、同回路17に内蔵させるメモリの容量をセルアレイの連係状態が遷移する間に光学系デバイスから供給されるデータの蓄積に耐え得る得るだけの小容量に止め、装置の低コスト化が実現される。
【0055】
(他の実施形態)
本願発明は、種々の変形実施が可能である。
上記実施形態におけるデータパスプロセッサ12のセルアレイは64個のセル30を縦横にそれぞれ8個ずつ並べてなるものであったが、セル30の個数及びその配列はこれに限定されるものでない。
【0056】
また、上記実施形態において、セルアレイを成す各セル30の演算器31は、加減算回路、乗算回路、否定論理積回路、排他的論理和回路、マルチプレクサなどの各種演算回路を含んで構成されていたが、加算と減算を別回路として構成してもよいし、比較回路、ディレイ回路、ビット演算回路などを有してもよい。要するに、各種画像処理で用いられる主要な演算機能を有してさえいれば、その回路構成の如何は問わない。
【0057】
上記実施形態においては、画像データに施すべき一連の画像処理の例として、色変換→サブサンプリング→文字/イメージ分離→平滑化→エッジ強調→圧縮を挙げ、これら各処理のうち、色変換とサブサンプリングを前段画像処理にするとの前提で動作説明を行った。これに対し、画像データに施すべき一連の画像処理の内容は、コンフィギュレーションカスタマイズプログラムの作成段階において確定されるものであり、画像データに施すべき一連の画像処理の各々を如何なる内容とするか、及びそれらの最初から何番目までの処理を前段画像処理とするかはユーザが任意に設定可能である。
【図面の簡単な説明】
【0058】
【図1】画像処理装置のハードウェア概略構成を示す図である。
【図2】データパスプロセッサの構成図である。
【図3】データパスプロセッサの構成図である。
【図4】コンフィギュレーションカスタマイズプログラムの構造図である。
【図5】コンフィギュレーションカスタマイズプログラムの構造図である。
【図6】カスタマイズプログラムの作成手順を示す図である。
【図7】各種データの入力内容を示すタイミングチャートである。
【図8】セルアレイの連携状態と処理別バッファ領域の記憶内容を示す図である。
【符号の説明】
【0059】
11…外部インターフェース、12…データパスプロセッサ、13…コンフィギュレーションメモリ、14…コントローラプロセッサ、15…DRAMインターフェース、16…PCIインターフェース、17…タイミング調整回路、18…DMAC、20…DRAM、31…演算器、32…選択器、33…演算結果保持メモリ、34…入力端子、35…出力端子、36…コンフィギュレーションレジスタ、37…読出器

【特許請求の範囲】
【請求項1】
自身の外部にある各素子のうちいずれかと結線され得る入力端子と出力端子、前記入力端子から入力されるデータに各種演算のうちいずれかを行って前記出力端子から出力させる演算器、入出端子と出力端子の各々と結線させる外部の素子と前記演算器の演算内容とを指定するデータであるコンフィギュレーションデータを記憶するためのメモリ、及び前記メモリに記憶されるコンフィギュレーションデータを読み出し、読み出したコンフィギュレーションデータが指定する素子と前記両端子の各々を結線させると共にそのコンフィギュレーションデータが指定する演算内容の演算を前記演算器に行わせるデータ読出器をそれぞれ有する素子である各セルを集めたセル群と、
予め設定された一連の画像処理の処理対象となる1つの画像データを分割して得た各分割画像データを、前記セル群の中からデータの入力先として特定した一又は複数のセルへ順次入力する入力手段と、
前記セル群の第1のグループの各セルを前記一連の画像処理の最初の一又は複数の画像処理である前段画像処理を実行し得るように連携させると共に第1のグループと異なる第2のグループの各セルをその前段画像処理に後続する各種の画像処理である後段画像処理を実行し得るように連携させるためのコンフィギュレーションデータのセットを、後段画像処理の種別毎に記憶した記憶手段と、
予め設定された順序に従って前記記憶手段からセットを選択し、選択したセットを成すコンフィギュレーションデータの各々で前記セル群の各セルのメモリの記憶内容を書き換えていくことにより前記第1のグループの各セルの連携状態を維持したしたまま前記第2のグループの各セルの連携状態を順次切り替え、第1のグループの各セルによる前段画像処理と第2のグループの各セルによるそれらの連携状態毎に個別の後段画像処理とを前記セル群に並列して実行させるコンフィギュレーション制御手段と
を備えた画像処理装置。
【請求項2】
請求項1に記載の画像処理装置において、
前記入力手段は、
前記セル群の第1のグループの中の一又は複数のセルをデータの入力先として特定し、特定したセルへ各分割画像データを順次入力する
画像処理装置。
【請求項3】
請求項2に記載の画像処理装置において、
処理途中のデータを記憶するバッファと、
前記第1のグループの各セルにより前段画像処理が施された前段画像処理済みデータを前記バッファに記憶させる手段と、
前記バッファから前段画像処理済みデータを読み出し、読み出した画像処理済みデータを前記セル群の第2のグループの各セルの中からデータの入力先として特定した一又は複数のセルへ入力する手段
を更に備えた画像処理装置。
【請求項4】
請求項3に記載の画像処理装置において、
第1の連携状態となっている第2のグループの各セルにより後段画像処理が施された第1段階後段画像処理済みデータを前記バッファに記憶させる手段と、
前記第2のグループの各セルの連携状態が前記コンフィギュレーション制御手段によって第1の連携状態から第2の連携状態に切り替えられると、前記バッファから第1段階後段画像処理済みデータを読み出し、読み出した画像処理済みデータを当該第2の遷移状態となっている第2のグループの各セルの中からデータの入力先として特定した一又は複数のセルへ入力する手段
を更に備えた画像処理装置。
【請求項5】
請求項1乃至4に記載の画像処理装置において、
前記第1のグループの各セルにより実行される前段画像処理は、
前記入力手段から順次入力される分割画像データの色空間を変換する色空間変換画像処理を含む
画像処理装置。
【請求項6】
請求項5に記載の画像処理装置において、
前記第1のグループの各セルにより実行される前段画像処理は、
前記色空間変換画像処理の施された分割画像データをサブサンプリングするサブサンプリング処理を更に含む
画像処理装置。
【請求項7】
請求項1乃至6に記載の画像処理装置において、
前記セル群は、
隣接する複数のセル毎にグループ化されたセルアレイを形成している
画像処理装置。
【請求項8】
請求項1乃至7に記載の画像処理装置において、
前記セル群を成す各セルが有する演算器は、
加減算回路、乗算回路、否定論理積回路、排他的論理和回路、定数出力回路、比較回路、ディレイ回路、ビット演算回路、及びそれらのうちいずれかを選択する選択回路を有し、
前記コンフィギュレーションデータは、
前記選択回路に選択させる回路を指定する
画像処理装置。
【請求項9】
請求項1乃至8に記載の画像処理装置において、
前記セル群を成す各セルが有する入力端子の各々は、
自身の外部にあるセルその他の素子にそれぞれ繋がる入力線と、それらの入力線のうちのいずれかと接続されるスイッチを有し、
前記コンフィギュレーションデータは、
前記スイッチと接続させる入力線を指定する
画像処理装置。
【請求項10】
請求項1乃至9に記載の画像処理装置において、
前記セル群を成す各セルが有する出力端子の各々は、
自身の外部にあるセルその他の素子にそれぞれ繋がる出力線と、それらの出力線のうちのいずれかと接続されるスイッチを有し、
前記コンフィギュレーションデータは、
前記スイッチと接続させる出力線を指定する
画像処理装置。
【請求項11】
自身の外部にある各素子のうちいずれかと結線され得る入力端子と出力端子、前記入力端子から入力されるデータに各種演算のうちいずれかを行って前記出力端子から出力させる演算器、入出端子と出力端子の各々と結線させる外部の素子と前記演算器の演算内容とを指定するデータであるコンフィギュレーションデータを記憶するためのメモリ、及び前記メモリに記憶されるコンフィギュレーションデータを読み出し、読み出したコンフィギュレーションデータが指定する素子と前記両端子の各々を結線させると共にそのコンフィギュレーションデータが指定する演算内容の演算を前記演算器に行わせるデータ読出器をそれぞれ有する素子である各セルを集めたセル群と、予め設定された一連の画像処理の処理対象となる1つの画像データを分割して得た各分割画像データを、前記セル群の中からデータの入力先として特定した一又は複数のセルへ順次入力する入力手段と、前記セル群の第1のグループの各セルを前記一連の画像処理の最初の一又は複数の画像処理である前段画像処理を実行し得るように連携させると共に第1のグループと異なる第2のグループの各セルをその前段画像処理に後続する各種の画像処理である後段画像処理を実行し得るように連携させるためのコンフィギュレーションデータのセットを、後段画像処理の種別毎に記憶した記憶手段とを備えたコンピュータに、
予め設定された順序に従って前記記憶手段からセットを選択し、選択したセットを成すコンフィギュレーションデータの各々で前記セル群の各セルのメモリの記憶内容を順次書き換えることにより前記第1のグループの各セルの連携状態を維持したしたまま前記第2のグループの各セルの連携状態を切り替え、第1のグループの各セルによる前段画像処理と第2のグループの各セルによるそれらの連携状態毎に個別の後段画像処理とを前記セル群に並列して実行させるコンフィギュレーション制御機能
を実現させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2007−304887(P2007−304887A)
【公開日】平成19年11月22日(2007.11.22)
【国際特許分類】
【出願番号】特願2006−133021(P2006−133021)
【出願日】平成18年5月11日(2006.5.11)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】