JP2006166102A - マルチファンクションシステムコントローラ - Google Patents

マルチファンクションシステムコントローラ Download PDF

Info

Publication number
JP2006166102A
JP2006166102A JP2004355499A JP2004355499A JP2006166102A JP 2006166102 A JP2006166102 A JP 2006166102A JP 2004355499 A JP2004355499 A JP 2004355499A JP 2004355499 A JP2004355499 A JP 2004355499A JP 2006166102 A JP2006166102 A JP 2006166102A
Authority
JP
Japan
Prior art keywords
image
unit
image data
rectangular
packet
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.)
Withdrawn
Application number
JP2004355499A
Other languages
English (en)
Inventor
Yasuhiro Takiyama
康弘 瀧山
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2004355499A priority Critical patent/JP2006166102A/ja
Publication of JP2006166102A publication Critical patent/JP2006166102A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)
  • Facsimiles In General (AREA)

Abstract

【課題】 パケットを複数の画像処理ブロックで処理する際、画像処理ブロックのBusy状態を判断し、パケットの処理を複数の画像処理ブロックに割り振ることによって、高速なプリンタへの出力を可能とする。
【解決手段】 画像読み取り手段によって読み取られた画像データを所定の矩形画像単位に分割し、矩形画像単位毎に画像処理を行う複数の矩形画像処理手段と、上記画像データ蓄積手段から矩形画像単位で上記矩形画像処理手段に画像データの転送を行う矩形画像データ転送手段と、矩形画像データを受け取り、画像データを出力する画像出力I/F手段とを有し、上記矩形画像データ転送手段において、複数の上記矩形画像処理部がビジー状態かレディ状態かを判断する判断手段と、上記判断手段により、レディ状態であることが判断された上記矩形画像処理部に対して、選択的に矩形画像データを転送する。
【選択図】 図2

Description

本発明は、マルチファンクションシステム(MFP)のコントローラにおける、矩形画像データ(パケットデータ)の出力制御方法に関するものである。
従来のMFPのコントローラにおいては画像データをラスターイメージとして処理を行っており、その画像処理単位は1ページのラスター画像単位となっていた。また、これとは別に画像データをパケット毎に分割し、各パケット単位で画像処理を行う構成とし、パケットデータに対して、並列に画像処理を行うコントローラもある(例えば、下記特許文献1参照。)。
特開2002−271619号公報
ところが、ラスター画像毎に処理する従来の方法では、画像処理を並列処理する際に、画素単位、あるいはライン単位で分割して、処理を行うため、ブロック単位での画像処理をするのには不向きである。また、パケットデータ単位で並列に画像処理を行う場合でも、従来の方法では、パケットデータをあらかじめ定められた順番で、複数の画像処理部に転送を行うため、ある画像処理部での処理時間が別の画像処理部の処理時間より著しく長かった場合でも、パケットデータの画像処理部への転送順序は変更することができなかった。
結果として、全体の処理時間が長くなってしまうことがあった。これは、高速なプリンタへの画像出力を行う際には、画像欠損等を引き起こす要因となり得る。
本発明は上述の問題点に着目してなされたものであって、画像データをパケットごとに分割し、各パケット単位で画像処理を行い、かつ、画像処理部を並列に配置することで、1ページに掛かる処理時間を短縮するとともに、画像処理部の処理速度に応じて、パケットを最適に複数の画像処理部に選択的に転送を可能とするマルチファンクションシステムコントローラの提供を目的とする。
上述の目的を達成するため、本発明のマルチファンクションコントローラは、画像読み取り手段によって読み取られた画像データを記憶しておく画像データ蓄積手段と、上記記憶された画像データを所定の矩形画像単位に分割し上記矩形画像単位毎に画像処理を行う複数の矩形画像処理手段と、上記画像データ蓄積手段から矩形画像単位で上記矩形画像処理手段に画像データの転送を行う矩形画像データ転送手段と、矩形画像データを受け取り、画像データを出力する画像出力I/F手段とを有し、上記矩形画像データ転送手段において、複数の上記矩形画像処理部がビジー状態かレディ状態かを判断する判断手段と、上記判断手段により、レディ状態であることが判断された上記矩形画像処理部に対して、選択的に矩形画像データを転送することを特徴とするものである。
本発明のマルチファンクションシステムコントローラによれば、複数の矩形画像処理部を有効に並列動作させることによって、プリンタへの出力のような高速処理が必要な場合にも、画像欠損等の起きることなく、高速な画像処理を行うことが可能となる。
以下に本発明を実施するための最良の形態を実施例に基づいて説明する。
以下で本発明の装置及びその動作について詳細に説明する。
[ハードウェア]
(全体構成)
全体構成図を図2に示す。Controller Unit(2000)は画像入力デバイスであるScanner(2070)や画像出力デバイスであるPrinter(2095)と接続し、一方ではLAN(2011)や公衆回線(WAN)(2051)接続することで、画像情報やデバイス情報の入出力、PDLデータのイメージ展開を行う為のコントローラである。
CPU(2001)はシステム全体を制御するプロセッサである。本実施例では2つのCPUを用いた例を示す。これら二つのCPUは、共通のCPUバス(2126)に接続され、さらに、システムバスブリッジ(2007)に接続される。

システムバスブリッジ(2007)は、バススイッチであり、CPUバス(2126)、RAMコントローラ(2124)、ROMコントローラ(2125)、IOバス1(2127)、サブバススイッチ(2128)、IOバス2(2129)、画像リングインターフェース1(2147)、画像リングインターフェース2(2148)が接続される。
サブバススイッチ(2128)は、第二のバススイッチであり、画像DMA1(2130)、画像DMA2(2132)、フォント伸張部(2134)、ソート回路(2135)、ビットマップトレース部(2136)が接続され、これらのDMAから出力されるメモリアクセス要求を調停し、システムバスブリッジへの接続を行う。
RAM(2002)はCPU(2001)が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。RAMコントローラ(2124)により制御される、本実施例では、ダイレクトRDRAMを採用する例を示す。
ROM(2003)はブートROMであり、システムのブートプログラムが格納されている。ROMコントローラ(2125)により制御される。
画像DMA1(2130)は、画像圧縮部(2131)に接続し、レジスタアクセスリング(2137)を介して設定された情報に基づき、画像圧縮部(2131)を制御し、RAM(2002)上にある非圧縮データの読み出し、圧縮、圧縮後データの書き戻しを行う、本実施例では、JPEGを圧縮アルゴリズムに採用した例を示す。
画像DMA2(2132)は、タイル伸張部(2103)に接続し、レジスタアクセスリング(2137)を介して設定された情報に基づき、タイル伸張部(2103)を制御し、RAM(2002)上にある圧縮データの読み出し、伸張、伸張後データの書き戻しを行う、本実施例では、JPEGを伸張アルゴリズムに採用した例を示す。
フォント伸張部(2134)は、LANインターフェース(2010)等を介し外部より転送されるPDLデータに含まれるフォントコードに基づき、ROM(2003)もしくは、RAM(2002)内に格納された、圧縮フォントデータの伸張を行う。本実施例では、FBEアルゴリズムを採用した例を示した。
ソート回路(2135)は、PDLデータを展開する段階で生成されるディスプレイリストのオブジェクトの順番を並び替える回路である。
ビットマップトレース回路(2136)は、ビットマップデータより、エッジ情報を抽出する回路である。
IOバス1(2127)は、内部IOバスの一種であり、標準バスであるUSBバスのコントローラ、USBインターフェース(2138)、汎用シリアルポート(2139)、インタラプトコントローラ(2140)、GPIOインターフェース(2141)が接続される。IOバス1には、バスアービタ(図示せず)が含まれる。
操作部I/F(2006)は操作部(UI)(2012)とインターフェース部で、操作部(2012)に表示する画像データを操作部(2012)に対して出力する。また、操作部(2012)から本システム使用者が入力した情報を、CPU(2001)に伝える役割をする。
IOバス2(2129)は内部IOバスの一種であり、汎用バスインターフェース1及び2(2142)と、LANコントローラ(2010)が接続される。IOバス2にはバスアービタ(図示せず)が含まれる。
汎用バスインターフェース(2142)は、2つの同一のバスインターフェースから成り、標準IOバスをサポートするバスブリッジである。本実施例では、PCIバス(2143)を採用した例を示した。
HDD(2004)はハードディスクドライブで、システムソフトウェア、画像データを格納する。ディスクコントローラ(2144)を介して一方のPCIバス(2143)に接続される。
LANコントローラ(2010)は、MAC回路(2145)、PHY/PMD回路(2146)を介しLAN(2011)に接続し、情報の入出力を行う。
Modem(2050)は公衆回線(2051)に接続し、情報の入出力を行う。
画像リングインターフェース1(2147)及び画像リングインターフェース2(2148)は、システムバスブリッジ(2007)と画像データを高速で転送する画像リング(2008)を接続し、タイル化後に圧縮されたデータをRAM(2002)とタイル画像処理部(2149)間で転送するDMAコントローラである。
画像リング(2008)は、一対の単方向接続経路の組み合わせにより構成される(画像リング1及び画像リング2)。画像リング(2008)は、タイル画像処理部(2149)内で、画像リングインターフェース3(2101)及びタイル画像インターフェース4(2102)を介し、タイル伸張部(2103)、コマンド処理部(2104)、ステータス処理部(2105)、タイル圧縮部(2106)に接続される。本実施例では、タイル伸張部(2103)を2組、タイル圧縮部を3組実装する例を示した。
タイル伸張部(2103)は、画像リングインターフェースへの接続に加え、タイルバス(2107)に接続され、画像リングより入力された圧縮後の画像データを伸張し、タイルバス(2107)へ転送するバスブリッジである。本実施例では、多値データにはJPEG、2値データにはパックビッツを伸張アルゴリズムとして採用した例を示す。
タイル圧縮部(2106)は、画像リングインターフェースへの接続に加え、タイルバス(2107)に接続され、タイルバスより入力された圧縮前の画像データを圧縮し、画像リング(2008)へ転送するバスブリッジである。本実施例では、多値データにはJPEG、2値データにはパックビッツを圧縮アルゴリズムとして採用した例を示す。
コマンド処理部(2104)は、画像リングインターフェースへの接続に加え、レジスタ設定バス(2109)に接続され、画像リングを介して入力したCPU(2001)より発行されたレジスタ設定要求を、レジスタ設定バス(2109)に接続される該当ブロックへ書き込む。また、CPU(2001)より発行されたレジスタ読み出し要求に基づき、レジスタ設定バスを介して該当レジスタより情報を読み出し。画像リングインターフェース4(2102)に転送する。
ステータス処理部(2105)は各画像処理部の情報を監視し、CPU(2001)に対してインタラプトを発行するためのインタラプトバケットを生成し、画像リングインターフェース4に出力する。
タイルバス(2107)には上記ブロックに加え、以下の機能ブロックが接続される。
レンダリング部インターフェース(2110)、画像入力インターフェース(2112)、画像出力インターフェース(2113)、多値化部(2119)、2値化部(2118)、色空間変換部(2117)、画像回転部(2030)、解像度変換部(2116)。
レンダリング部インターフェース(2110)は、後述するレンダリング部により生成されたビットマップイメージを入力するインターフェースである。レンダリング部とレンダリング部インターフェースは、一般的なビデオ信号(2111)にて接続される。レンダリング部インターフェースは、タイルバス(2107)に加え、メモリバス(2108)、レジスタ設定バス(2109)への接続を有し、入力された、ラスター画像をレジスタ設定バスを介して設定された、所定の方法によりタイル画像への構造変換をすると同時にクロックの同期化を行い、タイルバス(2107)に対し出力を行う。
画像入力インターフェースは(2112)は、後述するスキャナー用画像処理部(2114)により補正画像処理されたラスタイメージデータを入力とし、レジスタ設定バスを介して設定された、所定の方法によりタイル画像への構造変換とクロックの同期化を行い、タイルバス(2107)に対し出力を行う。
画像出力インターフェースは、タイルバスからのタイル画像データを入力とし、ラスター画像への構造変換及び、クロックレートの変更を行い、ラスター画像をプリンタ用画像処理部(2115)へ出力する。
画像回転部(2030)は画像データの回転を行う。解像度変換部(2116)は画像の解像度の変更を行う。色空間変換部(2117)はカラー及びグレースケール画像の色空間の変換を行う。
2値化部(2118)は、多値(カラー、グレースケール)画像を2値化する。多値化部(2119)は2値画像を多値データへ変換する。
外部バスインターフェース部(2120)は、画像リングインターフェース1、2,3,4、コマンド処理部、レジスタ設定バスを介し、CPU(2001)により発行された、書き込み、読み出し要求を外部バス3(2121)に変換出力するバスブリッジである。外部バス3(2121)は本実施例では、プリンタ用画像処理部(2115)、スキャナー用画像処理部(2114)に接続されている。
メモリ制御部(2122)は、メモリバス(2108)に接続され、各画像処理部の要求に従い、あらかじめ設定されたアドレス分割により、画像メモリ1及び画像メモリ2(2123)に対して、画像データの書き込み、読み出し、必要に応じてリフレッシュ等の動作を行う。本実施例では、画像メモリにSDRAMを用いた例を示した。
スキャナー用画像処理部(2114)では、画像入力デバイスであるスキャナー(2070)によりスキャンされた画像データを補正画像処理する。
プリンタ用画像処理部では、プリンタ出力のための補正画像処理を行い、結果をPrinter(2095)へ出力する。
レンダリング部(2060)はPDLコードもしくは、中間ディスプレイリストをビットマップイメージに展開する。
[システム全体]
本発明のネットワークシステム全体の構成図を図1に示す。
1001は本発明の装置で、スキャナーとプリンタから構成され、スキャナーから読み込んだ画像をローカルエリアネットワーク(1010)(以下LAN)に流したり、LANから受信した画像をプリンタによりプリントアウトできる。また、スキャナーから読んだ画像を図示しないFAX送信手段により、PSTNまたはISDN(1030)に送信したり、PSTNまたはISDNから受信した画像をプリンタによりプリントアウトできる。1002は、データベースサーバで、本発明の装置(1001)により読み込んだ2値画像及び多値画像をデータベースとして管理する。
1003は、データベースサーバ(1002)のデータベースクライアントで、データベース(1002)に保存されている画像データを閲覧/検索等できる。
1004は、電子メールサーバで、本発明の装置(1001)により読み取った画像を電子メールの添付として受け取ることができる。1005は、電子メールのクライアントで、電子メールサーバ(1004)の受け取ったメールを受信し閲覧したり、電子メールを送信したり、可能である。
1006がHTML文書をLANに提供するWWWサーバで、本発明の装置(1001)によりWWWサーバで提供されるHTML文書をプリントアウトできる。
1007は、ルータでLAN(1010)をインターネット/イントラネット(1012)と連結する。インターネット/イントラネットに、前述したデータベースサーバ(1002)、WWWサーバ(1006)、電子メールサーバ(1004)、本発明の装置(1001)と同様の装置が、それぞれ1020、1021、1022、1023として連結している。一方、本発明の装置(1001)は、PSTNまたはISDN(1030)を介して、FAX装置(1031)と送受信可能になっている。
また、LAN上にプリンタ(1040)も連結されており、本発明の装置(1001)により読み取った画像をプリントアウト可能なように構成されている。
[タイル画像(パケット)フォーマット]
本発明によるSystemControllerUnit(2000)内では、画像データ、CPU(2001)によるコマンド、各ブロックより発行される割り込み情報を、パケット化された形式で転送する。
本実施例では、図3に示すデータパケット、図4に示すコマンドパケット、図5に示すインタラプトパケットの3種の異なる種類のパケットが使用される。
データパケット(図3)
本実施例では画像Dataを32pixel×32pixelのTile単位の画像データ(3002)に分割して取り扱う例を示した。
このTile単位の画像に、必要なヘッダ情報(3001)及び画像付加情報等(3003)を付加してデータPacketとする。
以下にヘッダ情報(3001)に含まれる情報について説明を行う。PacketのTypeはヘッダ情報(3001)内のPcktType(3004)で区別される。PcktType(3004)にはリピートフラグが含まれており、Data Packetの画像Dataが1つ前に送信したData Packetの画像Dataと同一の場合、リピートフラグをセットする。
ChipID(3005)はパケットを送信するターゲットとなるチップのIDを示す。
DataType(3006)ではデータのタイプを示す。PageID(3007)はページを示しており、JobIDはソフトウェアで管理するためのJob ID(3008)を格納する。
Tileの番号はY方向のTile座標(3009)とX方向のTile座標(3010)の組み合わせで、YnXnで表される。
データパケットは画像データが圧縮されている場合と非圧縮の場合がある。本実施例では、圧縮アルゴリズムとして、多値カラー(多値グレースケールを含む)の場合はJPEGを2値の場合はパックビッツを採用した例を示した。
圧縮されている場合と非圧縮の場合との区別はCompressFlag(3017)で示される。
Process Instruction(3011)は左詰で処理順に設定し、各処理Unitは、処理後Process Instructionを左に8BitShiftする。Process Instruction(3011)はUnitID(3019)とMode(3020)の組が8組格納されている。UnitID(3019)は各処理Unitを指定し、Mode(3020)は各処理Unitでの動作Modeを指定する。これにより、1つのパケットは8つのUnitで連続して処理することができる。
PacketByteLength(3012)はパケットのトータルバイト数を示す。ImageDataByteLengh(3015)は画像データのバイト数、ZDataByteLength(3016)は画像付加情報のバイト数を表し、ImageDataOffset(3013)、ZDataOffset(3014)はそれぞれのデータのパケットの先頭からのOffsetを表している。
Packet Table(図6)
各PacketはPacket Table(6001)によって管理する。Packet Table(6001)の構成要素は次の通りで、それぞれTableの値に0を5bit付加すると、Packetの先頭Address(6002)、PacketのByte Length(6005)となる。
Packet Address Pointer(27bit)+5b00000=Packet先頭Address
Packet Length(11bit)+5b00000=PacketのByte Length
Packet Table(6001)とChain Table(6010)は分割されないものとする。
Packet Table(6001)は常に走査方向に並んでおり、Yn/Xn=000/000, 000/001,000/002,....という順で並んでいる。このPacket Table(6001)のEntryは一意にひとつのTileを示す。また、Yn/Xmaxの次のEntryはYn+1/Xとなる。
Packetがひとつ前のPacketとまったく同じDataである場合は、そのPacketはMemory上には書かず、Packet TableのEntryに1つめのEntryと同じPacket Address Pointer、Packet Lengthを格納する。1つのPacket Dataを2つのTable Entryが指すようなかたちになる。この場合、2つめのTable EntryのRepeat Flag(6003)がSetされる。
PacketがChain DMAにより複数に分断された場合は、Divide Flag(6004)をSetし、そのPacketの先頭部分が入っているChain BlockのChain Table番号(6006)をSetする。
Chain Table(6010)のEntryはChain Block Address(6011)とChain Block Length(6012)からなっており、Tableの最後のEntryにはAddress、Length共に0を格納しておく。
Command Packet Format(図4)
本Packet Formatはレジスタ設定バス(2109)へのアクセスを行うためのものである。本パケットを用いることにより、CPU(2001)より画像メモリ(2123)へのアクセスも可能である。
ChipID(4004)にはコマンドパケットの送信先となる画像処理部(2149)を表すIDが格納される。
PageID(4007)、JobID(4008)はソフトウェアで管理するためのPage IDとJob IDを格納する。
Packet ID(4009)は1次元で表される。Data PacketのX−coordinateのみを使用する。
パケットバイトレングス(4010)は128Byte固定である。
パケットデータ部(4002)には、アドレス(4011)とデータ(4012)の組を1つのコマンドとして、最大12個のコマンドを格納することが可能である。ライトかリードかのコマンドのタイプはCmdType(4005)で示され、コマンドの数はCmdnum(4006)で示される。
Interrupt Packet Format(図5)
本PacketFormatは画像処理部(2149)からCPU(2001)への割り込みを通知するためのものである。ステータス処理部(2105)はInterrupt Packetを送信すると、次に送信の許可がされるまではInterrupt Packetを送信してはならない。
パケットバイトレングス(5006)は128Byte固定である。
パケットデータ部(5002)には、画像処理部(2149)の各内部モジュールのステータス情報(5007)が格納されている。ステータス処理部(2105)は画像処理部(2149)内の各モジュールのステータス情報を集め、一括してシステム制御部(2150)に送ることができる。
ChipID(5004)にはInterrupt Packetの送信先となるシステム制御部(2150)を表すIDが、また、IntChipID(5005)にはInterrupt Packetの送信元となる画像処理部(2149)を表すIDが格納される。
[画像出力]
以下に本実施例の通常の画像出力制御方法について示す。本実施例では、次の手順でデータパケットを出力するものとする。
1.画像データがデータパケットとしてRAM(2002)に格納されている。このデータパケットは通常、RAM容量を節約するために、画像圧縮部(2131)で圧縮されたデータである。また、RAM(2002)には複数のデータパケットがRAM(2002)のどのアドレスに格納されているかを示すパケットテーブルも同様に格納されている。
2.画像リングインターフェース3(2101)はRAM(2002)に格納されているパケットテーブルを元に、RAM(2002)に格納されているデータパケットをシステムバスブリッジ(2007)を介して、画像リングインターフェース3(2101)に転送する。
3.画像リングインターフェース3(2101)は、データパケットのヘッダ情報(3001)に記載されているChipID(3005)およびUnitID(3019)により、転送先のユニット(タイル伸張部(2103))に対してデータパケットを転送する。
4.タイル伸張部(2103)は受け取ったデータパケットのヘッダ情報(3001)に記載された処理方法に従い、データパケットを伸張する。
5.タイル伸張部(2103)は処理後のデータパケットをタイルバス(2107)に転送する。
6.タイルバスは伸張処理後のデータパケットのヘッダ情報(3001)に記載されている転送先である、画像出力インターフェース(2113)にデータパケットを転送する。
7.画像出力インターフェース(2113)は受け取ったデータパケットを元に、ラスターデータを作成し、画像出力を行う。
上記の手順に沿って、通常の画像出力制御方法を詳細に説明する。
手順1において、スキャナーやネットワーク上のPCから送られたPDLデータもしくは公衆回線を経由して受け取ったFAX画像を、あらかじめパケット単位で圧縮されてRAM(2002)内に格納されているものとする。格納されているデータパケットにはパケットヘッダが付属しており、そのパケットの属性や、これから行われる処理内容が記載されている。例えば、2つのタイル伸張部(2103a,2103b)を使用する場合には、データパケット毎に処理を行うタイル伸張部を指示するために、データパケットに付属するパケットヘッダのUnitID(3019)に所定の値が書き込まれている。例えば、タイル伸張部1(2103a)、タイル伸張部2(2103b)を示すUnitIDがそれぞれ、0001、0010だとすると、パケットヘッダのUnitIDが0001だった場合、そのデータパケットはタイル伸張部1(2103a)で処理され、パケットヘッダのUnitIDが0010だった場合、そのデータパケットはタイル伸張部2(2103b)で処理される。
手順2において、画像リングインターフェース3(2101)はシステムバスブリッジ(2007)を介して、RAM(2002)内に格納されたデータパケットをRAM(2002)内に格納されたパケットテーブルを参照し、画像処理部(2149)に対して転送を行う。1つのデータパケットを転送完了した後、次のデータパケットを転送できる状態にあるなら、さらにパケットテーブルを参照し次のデータパケットを転送する。
手順3において、画像リングインターフェース3(2101)はChipID(3005)およびUnitID(3019)を参照してデータパケットを受け取り、キューイングするとともに、次にデータパケットを参照すべきユニットに対してデータを転送する。このときタイル伸張部(2103)に対してデータ転送が可能か否かの確認を行う。データ転送が可能でない場合は、データ転送が可能となるまで、待たされることとなる。
手順4において、画像データが多値カラーデータであるとすると、データパケットはタイル伸張部(2103)において、JPEG伸張処理が行われる。
手順5において、タイル伸張部(2103)は伸張処理が終了したパケットデータをタイルバス(2107)に対して転送を行う。
以下、このパケットデータは手順6、7で所定の処理を行った後、画像出力される。
通常、タイル伸張部1(2103a)とタイル伸張部2(2103b)は異なるジョブに対して、並列処理を行うために使用される。例えば、RAM(2002)に格納されたデータパケットをタイル伸張部1(2103a)で伸張し、画像出力インターフェース(2113)を介して、プリンタ(2095)に出力すると同時に、RAM(2002)に格納された別のデータパケットをタイル伸張 部2(2103b)で伸張し、画像リングインターフェース4(2102)を介して、RAM(2002)に書き戻すという並列動作を行うとする。このとき、それぞれのデータパケットのパケットヘッダ部のUnitID(3019)にはそれぞれ、0001と0010が指定され、所定のタイル伸張部で伸張が行われるしくみとなっている。
ところが、仮にデータパケットのメモリへの書き戻しのジョブがプリンタへの出力のジョブと並列に行われなかった場合、タイル伸張部2(2103b)はアイドル状態となっているにも関わらず、プリンタ出力のジョブの伸張処理はタイル伸張部1(2103a)のみで行われてしまう。そこで、本提案での実施例では、以下のような手順でプリンタ出力のジョブの伸張処理動作を高速化している。
図9は画像リングインターフェース3(2101)とタイル伸張部1(2103a)、タイル伸張部2(2103b)を示したブロック図である。同図において、9001,9002は画像リングインターフェース3(2101)とタイル伸張部1(2103a)、タイル伸張部2(2103b)間でデータ転送を行うための信号群である。
図8において、データ転送のタイミングを説明する。8001はクロックであり、データ転送は全て、このクロック同期で行われる。8002はリクエスト信号で、画像リングインターフェース3(2101)はタイル伸張部1(2103a)、またはタイル伸張部2(2103b)に対して画像転送の要求を出す。8003はアクノリッジ信号であり、画像リングインターフェース3(2101)からの要求に対して、タイル伸張部1(2103a)、またはタイル伸張部2(2103b)が転送の許可を与えるものである。8004は画像データで、64bitのバスで構成される。本実施例では一回につき、64bit×16beatのデータを転送する。8005はタイル伸張部1(2103a)、またはタイル伸張部2(2103b)の状態を示すBusy信号で、画像リングインターフェース3(2101)はこのBusy信号がアクティブ(Hi)のときには、リクエスト信号をアサートしないようになっている。これらの信号群(8001−8005)はタイル伸張部毎に並列に具備されている。
図7は画像リングインターフェース3(2101)の動作フロー図である。
画像リングインターフェース3(2101)に転送されたデータパケットはまず、ヘッダを確認され、UnitID(3019)の値が取得される(7001)。UnitID(3019)の値が0001だった場合、タイル伸張部1(2103a)の動作状態を判別する。タイル伸張部1(2103a)がBusy状態で無かった場合、タイル伸張部1(2103a)に対して、データを転送する(7004)。仮にタイル伸張部1(2103a)がBusy状態だった場合、UnitID(3019)の値を0010とし、再度、判定処理(7002)を行う。すなわち、UnitID(3019)0010に対応した、タイル伸張部2(2103b)の動作状態を判別する。ここで、タイル伸張部2(2103b)がBusy状態で無ければ、タイル伸張部2(2103b)に対して、データ転送を行う。さらに、タイル伸張部2(2103b)もBusy状態であるなら、再度、UnitID(3019)をトグルして、Busy状態で無いタイル伸張部があるまで、ウエイトする。
次に図2において、画像出力インターフェース(2113)のデータの並べ替えについて説明する。
タイル伸張部1(2103a)とタイル伸張部2(2103b)に振り分けられたデータパケットは、ビジー状態が続いたタイル伸張部からの伸張データを、後から入力されたもう一方のタイル伸張部からの出力伸張データが追い越してしまう可能性がある。そこで、画像出力インターフェース(2113)では、データのヘッダ部のY方向のTile座標(3009)とX方向のTile座標(3010)を読み、しかるべき順序に並べ替えを行う。画像出力インターフェース(2113)はタイル伸張部1(2103a)、タイル伸張部2(2103b)から得られたデータをメモリバス(2108)、メモリ制御部(2122)を介して、画像メモリ(2123)に転送をする。画像メモリ(2123)上には、32ライン分のバンド領域が確保されており、座標データにしたがって、所定の位置にタイル画像として、書き込みを行う。32ライン分のデータの書き込みが終了すると、ラスター画像として、32ライン分の画像の先頭から順番に読み出しを行い、プリンタ用画像処理部(2115)を介して、プリンタ(2095)に画像データを転送する。
このように、異なるジョブの並列動作用に設けられた矩形画像処理部の動作状態を判断し、1つのジョブを2つの矩形画像処理部に振り分けを行うことによって、複数の矩形画像処理部を適切に使用することができる。また、複数の矩形画像処理部の処理速度が異なっている場合でも、画像出力インターフェースにおいて、ラスター画像へのデータの並べ替えを行うことで、適切な画像出力が得られる。
本実施例では、矩形画像処理部の数を2つとしたが、3つ以上の場合でも、UnitIDのトグル処理を該当数のラウンドロビン処理にすることで、同様の処理が可能となる。また、矩形画像処理部をJPEGの伸張処理である構成で説明しているが、ブロック単位で処理を行う別の画像処理を行う場合でも、本実施形態が適用可能である。
本システムの実使用環境を表す図 本システムコントローラの全体ブロック図 イメージパケットを表す図 コマンドパケットを表す図 インタラプトパケットを表す図 パケットテーブルを表す図 画像リングインターフェース3の動作フロー図 画像リングインターフェース3とタイル伸張部間のデータ転送のタイミング図 画像リングインターフェース3とタイル伸張を示したブロック図
符号の説明
2000 Controller Unit
2001 CPU
2002 RAM
2003 ROM
2101 画像リングインターフェース3
2113 画像出力インターフェース
2128 サブバススイッチ
2150 システム制御部

Claims (4)

  1. 複写機・プリンタ等のマルチファンクションシステムコントローラにおいて、
    画像読み取り手段によって読み取られた画像データを記憶しておく画像データ蓄積手段と、前記記憶された画像データを所定の矩形画像単位に分割し前記矩形画像単位毎に画像処理を行う複数の矩形画像処理手段と、前記画像データ蓄積手段から矩形画像単位で前記矩形画像処理手段に画像データの転送を行う矩形画像データ転送手段と、矩形画像データを受け取り、画像データを出力する画像出力I/F手段とを有し、
    前記矩形画像データ転送手段において、複数の前記矩形画像処理部がビジー状態かレディ状態かを判断する判断手段と、
    前記判断手段により、レディ状態であることが判断された前記矩形画像処理部に対して、選択的に矩形画像データを転送することを特徴とするマルチファンクションシステムコントローラ。
  2. 前記矩形画像処理部の機能が画像伸張処理であることを特徴とする請求項1に記載のマルチファンクションシステムコントローラ。
  3. 前記画像処理部の処理の後、画像出力手段によって、画像出力を行うことを特徴とする請求項1または2に記載のマルチファンクションシステムコントローラ。
  4. 前記画像出力手段において、前記複数の矩形画像処理手段からの画像データをラスター順に並べ替えて出力することを特徴とする請求項3に記載のマルチファンクションシステムコントローラ。
JP2004355499A 2004-12-08 2004-12-08 マルチファンクションシステムコントローラ Withdrawn JP2006166102A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004355499A JP2006166102A (ja) 2004-12-08 2004-12-08 マルチファンクションシステムコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004355499A JP2006166102A (ja) 2004-12-08 2004-12-08 マルチファンクションシステムコントローラ

Publications (1)

Publication Number Publication Date
JP2006166102A true JP2006166102A (ja) 2006-06-22

Family

ID=36667593

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004355499A Withdrawn JP2006166102A (ja) 2004-12-08 2004-12-08 マルチファンクションシステムコントローラ

Country Status (1)

Country Link
JP (1) JP2006166102A (ja)

Similar Documents

Publication Publication Date Title
JP4065503B2 (ja) 画像処理装置、画像入出力装置、変倍処理方法、及びメモリ制御方法
US7130072B2 (en) Multifunction system, image processing method, computer program and memory medium
US7193738B2 (en) Image processing apparatus and method
US7145681B2 (en) Apparatus and method for processing divided image data
JP2003316714A (ja) 情報処理装置及び方法
JP3907471B2 (ja) 画像入出力制御装置
JP6833491B2 (ja) 情報処理装置
JP3730586B2 (ja) 画像処理装置
JP3958141B2 (ja) 画像処理装置
JP2006166102A (ja) マルチファンクションシステムコントローラ
JP2006246493A (ja) 画像入出力制御装置、画像処理装置、画像入出力制御装置における画像処理方法、及び画像処理装置における画像処理方法
JP2018118477A (ja) 画像処理装置とその制御方法、及びプログラム
JP2006229306A (ja) 画像処理装置
JP2005006000A (ja) 画像処理システム
JP2003348338A (ja) 情報処理装置
JP2004343202A (ja) 画像処理装置
JP2007158429A (ja) 画像処理装置及び画像データ転送制御方法、並びに制御プログラム及び記憶媒体
JP2004157609A (ja) 画像処理装置および画像処理システム
JP2004253906A (ja) 伸長装置
JP2008033432A (ja) データ処理装置、画像形成装置、制御方法、及びプログラム
JP2003196044A (ja) 画像処理方法及びその装置
JP2007243444A (ja) 画像処理装置
JP2003304381A (ja) 情報処理装置及びデータ転送方法
JP2006203634A (ja) 画像処理装置
JP2003271328A (ja) 画像処理装置及びそのデータ転送方法

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080304