JP2007243444A - Image processor - Google Patents

Image processor Download PDF

Info

Publication number
JP2007243444A
JP2007243444A JP2006061358A JP2006061358A JP2007243444A JP 2007243444 A JP2007243444 A JP 2007243444A JP 2006061358 A JP2006061358 A JP 2006061358A JP 2006061358 A JP2006061358 A JP 2006061358A JP 2007243444 A JP2007243444 A JP 2007243444A
Authority
JP
Japan
Prior art keywords
image processing
data
packet
image
command
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
JP2006061358A
Other languages
Japanese (ja)
Inventor
Katsuya Suzuki
勝也 鈴木
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 JP2006061358A priority Critical patent/JP2007243444A/en
Publication of JP2007243444A publication Critical patent/JP2007243444A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image processor which can access a register without being influenced by a state of other image processing blocks, and without forming a space more than necessary between pages. <P>SOLUTION: In the image processor, when accessing the register inside each image processing block in an image processing chip, a bus to be used for transferring a command packet sent from the CPU within the image processing chip and within each image processing block can be automatically switched between a command bus 2109 and a data bus 2107. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

デジタル画像データを入力し画像処理を行なう画像処理用LSIの構成に関する。   The present invention relates to a configuration of an image processing LSI that inputs digital image data and performs image processing.

従来の画像処理用LSIでは内部各画像処理モジュールへのレジスタ設定を行なう場合、処理を完了するのを待って行っていた。例えばあるページの処理が終了してから次のページ用のレジスタ設定を行い、全てのレジスタ設定が完了した後に次のページの処理を開始している。これは、該当の画像処理モジュールが処理を完了する前にレジスタ設定を変更してしまうと、例えば同一ページ内で、レジスタ設定前後の画像品質が異なってしまうためである。   In the conventional image processing LSI, when register setting is performed for each internal image processing module, the processing is waited for to be completed. For example, the register setting for the next page is performed after the processing of a certain page is completed, and the processing of the next page is started after all the register settings are completed. This is because if the register setting is changed before the corresponding image processing module completes the processing, for example, the image quality before and after the register setting is different within the same page.

又、別の従来例としては、特許文献1をあげることが出来る。
特開2004−253906号公報
As another conventional example, Patent Document 1 can be cited.
Japanese Patent Laid-Open No. 2004-253906

従来の技術では、レジスタ設定をする回数が多い場合にレジスタ設定に要する時間が長くなり、結果としてページとページの間の間隔・時間が空いてしまうことになる。これによって、この画像処理LSIを使用した機器のパフォーマンスが低下することになってしまう。   In the conventional technique, when the number of times of register setting is large, the time required for register setting becomes long, and as a result, the interval / time between pages becomes empty. As a result, the performance of the device using the image processing LSI is degraded.

また、この問題を解決するために、特許文献1においてデータバス上にコマンドパケットを転送することができる構成の画像処理装置が提案されているが、この文献の場合、レジスタアクセスのための全コマンドパケットをデータパケットの間に挿入して転送する系であっため、複数の画像処理モジュールが直列に接続して画像処理列を形成している場合に、1つの画像処理部での処理に時間が掛かっていると、他の画像処理部へのレジスタアクセスが滞ってしまうという問題が挙げられる。   In order to solve this problem, an image processing apparatus having a configuration capable of transferring a command packet onto a data bus has been proposed in Patent Document 1. In this document, all commands for register access are proposed. Since this is a system that inserts and transfers packets between data packets, when multiple image processing modules are connected in series to form an image processing sequence, it takes time to process in one image processing unit. If this is the case, there is a problem that register access to other image processing units is delayed.

さらに、実質的にはこの文献ではレジスタへのリードアクセスが不可能であるという問題点も残っていた。   In addition, in this document, there is still a problem that read access to the register is impossible.

本発明では、上記の問題点を解決するために、以下のような構成を用意する。   In the present invention, in order to solve the above problems, the following configuration is prepared.

主に画像データを転送するためのデータバスと、コマンドデータを転送するためのコマンドバスと、上記データバス及び上記コマンドバスに接続され転送された画像データにそれぞれの画像処理を施す少なくとも1つの画像処理モジュールと、上記画像処理ブロックの上流にコマンドデータと画像データをコマンドバスもしくはデータバスに振り分けて転送する振り分けモジュールと、外部とのデータの入出力を行なう入出力I/F部とを有する
画像処理装置において、
上記画像データは所定サイズの矩形に分割されたデータパケットとして、又上記子万F度データは所定サイズのデータ長に区切られたコマンドパケットとしてそれぞれ転送され、
上記パケット単位で処理が行われ、
上記パケット内に包含されるパケットヘッダ情報内の所定の情報を元に、上記振り分けモジュールにて該パケットをデータバスかコマンドバスのどちらかに振り分けて転送する手段と、上記各画像処理モジュールにおいてデータバスを介して転送されたデータ/コマンドパケットを、それぞれ画像処理部/レジスタに転送する手段とを有する画像処理装置とする。
A data bus for mainly transferring image data, a command bus for transferring command data, and at least one image for performing respective image processing on the data bus and the image data connected to the command bus and transferred. An image having a processing module, a distribution module for distributing command data and image data to the command bus or the data bus and transferring them upstream of the image processing block, and an input / output I / F unit for inputting / outputting data to / from the outside In the processing device,
The image data is transferred as a data packet divided into rectangles of a predetermined size, and the child F-degree data is transferred as a command packet divided into data lengths of a predetermined size.
Processing is performed on a packet basis,
Based on the predetermined information in the packet header information included in the packet, the distribution module distributes the packet to either the data bus or the command bus and transfers the data in each image processing module. An image processing apparatus having means for transferring data / command packets transferred via a bus to an image processing unit / register, respectively.

以上のように本発明によれば、コマンドパケットを画像データと同期させたい時は画像バス経由で、独立して送信したい時はコマンドバス経由で転送することができ、画像データをページ途中で破壊することなくレジスタ設定を変更することができつつ、仮に画像バスに処理の重い画像処理モジュールが存在し、その下流のモジュールに対してレジスタアクセスを行いたい時でも任意のタイミングでアクセスすることができる。   As described above, according to the present invention, the command packet can be transferred via the image bus when it is desired to synchronize with the image data, and can be transferred via the command bus when the command packet is desired to be transmitted independently. It is possible to change the register settings without having to do so, but there is an image processing module with heavy processing on the image bus, and even if it is desired to perform register access to the downstream module, it can be accessed at any timing. .

次に、本発明の詳細を実施例の記述に従って説明する。   Next, details of the present invention will be described in accordance with the description of the embodiments.

[システム全体]
本発明のネットワークシステム全体の構成図を図1 に示す。
[Whole system]
A configuration diagram of the entire network system of the present invention is shown in FIG.

1001は、スキャナとプリンタから構成され、スキャナから読み込んだ画像をローカルエリアネットワーク(1010)(以下LAN)に流したり、LANから受信した画像をプリンタによりプリントアウトできる。また、スキャナから読んだ画像を図示しないFAX送信手段により、PSTNまたはISDN(1030)に送信したり、PSTNまたはISDNから受信した画像をプリンタによりプリントアウトできる。1002は、データベースサーバで、本発明の装置(1001)により読み込んだ2値画像及び多値画像をデータベースとして管理する。   An image 1001 includes a scanner and a printer. An image read from the scanner can be sent to a local area network (1010) (hereinafter referred to as LAN), and an image received from the LAN can be printed out by a printer. Further, an image read from the scanner can be transmitted to PSTN or ISDN (1030) by a FAX transmission means (not shown), and an image received from PSTN or ISDN can be printed out by a printer. Reference numeral 1002 denotes a database server that manages binary images and multi-valued images read by the apparatus (1001) of the present invention as a database.

1003は、データベースサーバ(1002)のデータベースクライアントで、データベース(1002)に保存されている画像データを閲覧/検索等できる。   Reference numeral 1003 denotes a database client of the database server (1002), which can browse / search image data stored in the database (1002).

1004は、電子メールサーバで、本発明の装置(1001)により読み取った画像を電子メールの添付として受け取ることができる。1005は、電子メールのクライアントで、電子メールサーバ(1004)の受け取ったメールを受信し閲覧したり、電子メールを送信したり、可能である。   An e-mail server 1004 can receive an image read by the apparatus (1001) of the present invention as an e-mail attachment. Reference numeral 1005 denotes an e-mail client that can receive and browse e-mails received by the e-mail server (1004) and send e-mails.

1006がHTML文書をLANに提供するWWWサーバで、本発明の装置(1001)によりWWWサーバで提供されるHTML文書をプリントアウトできる。   Reference numeral 1006 denotes a WWW server that provides an HTML document to the LAN, and an HTML document provided by the WWW server can be printed out by the apparatus (1001) of the present invention.

1007は、ルータでLAN(1010)をインターネット/イントラネット(1012)と連結する。インターネット/イントラネットに、前述したデータベースサーバ(1002)、WWWサーバ(1006)、電子メールサーバ(1004)、本発明の装置(1001)と同様の装置が、それぞれ1020、1021、1022、1023として連結している。一方、本発明の装置(1001)は、PSTNまたはISDN(1030)を介して、FAX装置(1031)と送受信可能になっている。   Reference numeral 1007 denotes a router that connects the LAN (1010) to the Internet / intranet (1012). The database server (1002), the WWW server (1006), the e-mail server (1004), and the device similar to the device (1001) of the present invention are connected to the Internet / intranet as 1020, 1021, 1022, and 1023, respectively. ing. On the other hand, the apparatus (1001) of the present invention can transmit and receive with the FAX apparatus (1031) via the PSTN or ISDN (1030).

また、LAN上にプリンタ(1040)も連結されており、本発明の装置(1001)により読み取った画像をプリントアウト可能なように構成されている。   Also, a printer (1040) is connected to the LAN, and is configured to print out an image read by the apparatus (1001) of the present invention.

[コントローラの説明]
図2 は、本発明を最もよく表した画像処理装置のブロック図である。
[Description of controller]
FIG. 2 is a block diagram of an image processing apparatus that best represents the present invention.

画像リング(2008)は、一対の単方向接続経路の組み合わせにより構成される(画像リング1及び画像リング2)。画像リング(2008)は、タイル画像処理部(2149)内で、画像リングインターフェース3(2101)及びタイル画像インターフェース4(2102)を介し、タイル伸張部(2103)、パケット振り分け部(2104)、ステータス処理部(2105)、タイル圧縮部(2106)に接続される。   The image ring (2008) is composed of a combination of a pair of unidirectional connection paths (image ring 1 and image ring 2). The image ring (2008) includes a tile expansion unit (2103), a packet distribution unit (2104), a status via the image ring interface 3 (2101) and the tile image interface 4 (2102) in the tile image processing unit (2149). The processing unit (2105) is connected to the tile compression unit (2106).

タイル伸張部(2103)は、画像リングインターフェースへの接続に加え、パケット振り分け部(2104)及びデータバス(2107)に接続され、画像リングより入力された圧縮済みの画像データを伸張し、データバス(2107)へ転送する。本実施例では、多値データにはJPEG、2値データにはパックビッツを伸張アルゴリズムとして採用した例を示す。   The tile expansion unit (2103) is connected to the packet distribution unit (2104) and the data bus (2107) in addition to the connection to the image ring interface, and expands the compressed image data input from the image ring, Transfer to (2107). In the present embodiment, an example is shown in which JPEG is used as multi-value data and Pacbits are used as decompression algorithms for binary data.

タイル圧縮部(2106)は、画像リングインターフェースへの接続に加え、データバス(2107)に接続され、データバスより入力された圧縮前の画像データを圧縮し、画像リング(2008)へ転送するバスブリッジである。本実施例では、多値データにはJPEG、2値データにはパックビッツを圧縮アルゴリズムとして採用した例を示す。   In addition to connecting to the image ring interface, the tile compression unit (2106) is connected to the data bus (2107), compresses the uncompressed image data input from the data bus, and transfers it to the image ring (2008). It is a bridge. In the present embodiment, an example is shown in which JPEG is used as multi-value data and Pacbits are used as compression algorithms for binary data.

パケット振り分け部(2104)は、画像リングインターフェースへの接続に加え、コマンドバス(2109)及びタイル伸長部(2103)に接続され、画像リングを介して入力された画像データをデータバス(2107)に転送する。またCPU(2001)より発行されたレジスタ設定要求(コマンド)を、コマンドバス(2109)もしくはデータバス(2107)に転送する。また、CPU(2001)より発行されたリードに基づき、コマンドバスを介して該当レジスタより情報を読み出し。画像リングインターフェース4(2102)に転送する。   The packet distribution unit (2104) is connected to the command bus (2109) and the tile expansion unit (2103) in addition to the connection to the image ring interface, and the image data input through the image ring is input to the data bus (2107). Forward. The register setting request (command) issued by the CPU (2001) is transferred to the command bus (2109) or the data bus (2107). Also, based on the read issued by the CPU (2001), information is read from the corresponding register through the command bus. Transfer to Image Ring Interface 4 (2102).

データバス(2107)には上記ブロックに加え、以下の機能ブロックが接続される。   In addition to the above blocks, the following functional blocks are connected to the data bus (2107).

レンダリング部インターフェース(2110)、画像入力インターフェース(2112)、画像出力インターフェース(2113)、多値化部(2119)、2値化部(2118)、色空間変換部(2117)、画像回転部(2030)、解像度変換部(2116)。   Rendering unit interface (2110), image input interface (2112), image output interface (2113), multi-value conversion unit (2119), binarization unit (2118), color space conversion unit (2117), image rotation unit (2030) ), A resolution converter (2116).

レンダリング部インターフェース(2110)は、後述するレンダリング部により生成されたビットマップイメージを入力するインターフェースである。レンダリング部とレンダリング部インターフェースは、一般的なビデオ信号(2111)にて接続される。レンダリング部インターフェースは、データバス(2107)に加え、メモリバス(2108)、コマンドバス(2109)への接続を有し、入力された、ラスター画像をコマンドバスを介して設定された、所定の方法によりタイル画像への構造変換をすると同時にクロックの同期化を行い、データバス(2107)に対し出力を行なう。   The rendering unit interface (2110) is an interface for inputting a bitmap image generated by a rendering unit described later. The rendering unit and the rendering unit interface are connected by a general video signal (2111). The rendering unit interface has a connection to the memory bus (2108) and the command bus (2109) in addition to the data bus (2107), and a predetermined method in which the input raster image is set via the command bus. Thus, the structure is converted into a tile image and at the same time the clock is synchronized and output to the data bus (2107).

画像入力インターフェースは(2112)は、後述するスキャナ用画像処理部(2114)により補正画像処理されたラスタイメージデータを入力とし、コマンドバスを介して設定された、所定の方法によりタイル画像への構造変換とクロックの同期化を行い、データバス(2107)に対し出力を行なう。   The image input interface (2112) receives raster image data subjected to correction image processing by a scanner image processing unit (2114), which will be described later, and inputs a structure into a tile image by a predetermined method set via a command bus. Conversion and clock synchronization are performed and output to the data bus (2107).

画像出力インターフェースは、データバスからのタイル画像データを入力とし、ラスター画像への構造変換及び、クロックレートの変更を行い、ラスター画像をプリンタ用画像処理部(2115)へ出力する。   The image output interface receives tile image data from the data bus, converts the structure into a raster image and changes the clock rate, and outputs the raster image to the printer image processing unit (2115).

画像回転部(2030)は画像データの回転を行なう。   An image rotation unit (2030) rotates image data.

解像度変換部(2116)は画像の解像度の変更を行なう。   A resolution converter (2116) changes the resolution of the image.

色空間変換部(2117)はカラー及びグレースケール画像の色空間の変換を行なう。   A color space conversion unit (2117) converts the color space of the color and gray scale image.

2値化部(2118)は、多値(カラー、グレースケール)画像を2値化する。   A binarization unit (2118) binarizes a multi-value (color, gray scale) image.

多値化部(2119)は2値画像を多値データへ変換する。   A multi-value conversion unit (2119) converts a binary image into multi-value data.

外部バスインターフェース部(2120)は、画像リングインターフェース1、2,3,4、コマンド処理部、コマンドバスを介し、CPU(2001)により発行された、書き込み、読み出し要求を外部バス3(2121)に変換出力するバスブリッジである。外部バス3(2121)は本実施例では、プリンタ用画像処理部(2115)、スキャナ用画像処理部(2114)に接続されている。   The external bus interface unit (2120) sends write and read requests issued by the CPU (2001) to the external bus 3 (2121) via the image ring interface 1, 2, 3, 4, command processing unit and command bus. This is a bus bridge that converts and outputs. In this embodiment, the external bus 3 (2121) is connected to the printer image processing unit (2115) and the scanner image processing unit (2114).

メモリ制御部(2122)は、メモリバス(2108)に接続され、各画像処理部の要求に従い、あらかじめ設定されたアドレス分割により、画像メモリ1及び画像メモリ2(2123)に対して、画像データの書き込み、読み出し、必要に応じてリフレッシュ等の動作を行なう。本実施例では、画像メモリにSDRAMを用いた例を示した。   The memory control unit (2122) is connected to the memory bus (2108), and in accordance with the request of each image processing unit, the image data is transferred to the image memory 1 and the image memory 2 (2123) by preset address division. Operations such as writing, reading, and refreshing are performed as necessary. In this embodiment, an example in which SDRAM is used as the image memory is shown.

スキャナ用画像処理部(2114)では、画像入力デバイスであるスキャナ(2070)によりスキャンされた画像データを補正画像処理する。   The scanner image processing unit (2114) performs correction image processing on the image data scanned by the scanner (2070) which is an image input device.

プリンタ用画像処理部では、プリンタ出力のための補正画像処理を行い、結果をPrinter(2095)へ出力する。   The printer image processing unit performs corrected image processing for printer output, and outputs the result to the Printer (2095).

レンダリング部(2060)はPDLコードもしくは、中間ディスプレイリストをビットマップイメージに展開する。   The rendering unit (2060) expands the PDL code or the intermediate display list into a bitmap image.

[タイル画像(パケット)フォーマット]
前記SystemControllerUnit(2000)内では、画像データ、CPU(2001)によるコマンド、各ブロックより発行される割り込み情報を、パケット化された形式で転送する。
[Tile image (packet) format]
In the SystemControllerUnit (2000), image data, commands from the CPU (2001), and interrupt information issued from each block are transferred in a packetized form.

本実施例では、図3 に示すデータパケット、図4 に示すコマンドパケットの2種の異なる種類のパケットが使用される。   In this embodiment, two different types of packets are used: a data packet shown in FIG. 3 and a command packet shown in FIG.

データパケット(図3 )
図3 に画像 Dataを32pixel x 32pixelのTile単位の画像データ(3002)に分割して取り扱う例を示した。
Data packet (Figure 3)
Fig. 3 shows an example in which image data is divided into 32 pixel x 32 pixel Tile unit image data (3002).

このTile単位の画像に、必要なヘッダ情報(3001)及び画像付加情報等(3003)を付加してデータPacketとする。   Necessary header information (3001) and image additional information (3003) are added to the image in units of Tile to form a data packet.

以下にヘッダ情報(3001)に含まれる情報について説明を行なう。   Information included in the header information (3001) will be described below.

PacketのTypeはヘッダ情報(3001)内のPacketType(3004)で区別される。PacketType (3004)にはリピートフラグが含まれており、Data Packetの画像Dataが1つ前に送信したData Packetの画像Dataと同一の場合、リピートフラグをセットする。   Packet Type is distinguished by PacketType (3004) in header information (3001). PacketType (3004) includes a repeat flag. When the Data Packet image Data is the same as the previous Data Packet image Data transmitted, the Repeat Flag is set.

ChipID(3005)はパケットを送信するターゲットとなるチップのIDを示す。   ChipID (3005) indicates the ID of a target chip that transmits a packet.

DataType(3006)ではデータのタイプを示す。   DataType (3006) indicates the data type.

PageID(3007)はページを示しており、JobIDはソフトウェアで管理するためのJob ID(3008)を格納する。   PageID (3007) indicates a page, and JobID stores Job ID (3008) for software management.

Tileの番号はY方向のTile座標(3009)とX方向のTile座標(3010)の組み合わせで、YnXnで表される。   The Tile number is a combination of the Tile coordinate (3009) in the Y direction and the Tile coordinate (3010) in the X direction, and is represented by YnXn.

データパケットは画像データが圧縮されている場合と非圧縮の場合がある。本実施例では、圧縮アルゴリズムとして、多値カラー(多値グレースケールを含む)の場合はJPEGを2値の場合はパックビッツを採用した例を示した。   Data packets may be compressed or uncompressed. In this embodiment, as the compression algorithm, an example is shown in which JPEG is used for multi-valued colors (including multi-value gray scales) and Pacbits are used for binary values.

圧縮されている場合と非圧縮の場合との区別はCompressFlag(3017)で示される。   The distinction between the case of being compressed and the case of non-compression is indicated by 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で連続して処理することができる。   Process Instruction (3011) is left-justified and set in the processing order, and each processing unit shifts the process instruction 8 bits to the left after processing. Process Instruction (3011) stores eight sets of UnitID (3019) and Mode (3020). UnitID (3019) designates each processing unit, and Mode (3020) designates the operation mode in each processing unit. As a result, one packet can be continuously processed by eight Units.

PacketByteLength(3012)はパケットのトータルバイト数を示す。   PacketByteLength (3012) indicates the total number of bytes of the packet.

ImageDataByteLengh(3015)は画像データのバイト数、ZDataByteLength(3016)は画像付加情報のバイト数を表し、ImageDataOffset(3013)、ZDataOffset(3014)はそれぞれ、データのパケットの先頭からのOffsetを表している。   ImageDataByteLengh (3015) represents the number of bytes of image data, ZDataByteLength (3016) represents the number of bytes of image additional information, and ImageDataOffset (3013) and ZDataOffset (3014) represent Offset from the beginning of the data packet.

BusSel(3021)はこのパケットが画像処理部内でデータバスかコマンドバスのいずれを転送されるかを示す。   BusSel (3021) indicates whether the data bus or the command bus is transferred in the image processing unit.

Packet Table(図6 )
各PacketはPacket Table(6001)によって管理する。
Packet Table (Figure 6)
Each packet is managed by a packet table (6001).

Packet Table(6001)の構成要素は次の通りで、それぞれTableの値に0を5bit付加すると、Packetの先頭Address(6002)、PacketのByte Length(6005)となる。   The components of the Packet Table (6001) are as follows. When 5 bits are added to the value of the Table, the packet begins with Address (6002) and 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 Address Pointer (27bit) + 5b00000 = Packet top address
Packet Length (11bit) + 5b00000 = Packet Byte Length
Packet Table (6001) and Chain Table (6010) are not divided.

Packet Table(6001)は常に走査方向に並んでおり、Yn/Xn=000/000, 000/001,000/002,....という順で並んでいる。このPacket Table(6001)のEntryは一意にひとつのTileを示す。また、Yn/Xmaxの次のEntryはYn+1/X0となる。 The Packet Table (6001) is always arranged in the scanning direction and arranged in the order of Yn / Xn = 000/000, 000 / 001,000 / 002,. An Entry in the Packet Table (6001) uniquely indicates one Tile. In addition, the following Entry of Yn / Xmax becomes Yn + 1 / X 0.

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される。   When the packet is exactly the same data as the previous packet, the packet is not written on the memory, and the same packet address pointer and packet length as the first entry are stored in the entry of the packet table. It becomes the form that two Table Entry points to one Packet Data. In this case, the repeat flag (6003) of the second table entry is set.

PacketがChain DMAにより複数に分断された場合は、Divide Flag(6004)をSetし、そのPacketの先頭部分が入っているChain BlockのChain Table番号(6006)をSetする。   When the packet is divided into a plurality by Chain DMA, Divide Flag (6004) is set, and the Chain Table number (6006) of the Chain Block containing the head part of the packet is set.

Chain Table(6010)のEntryはChain Block Address(6011)とChain Block Length(6012)からなっており、Tableの最後のEntryにはAddress、Length共に0を格納しておく。   An entry of the Chain Table (6010) is composed of a Chain Block Address (6011) and a Chain Block Length (6012), and 0 is stored in both the Address and Length in the last Entry of the Table.

Command Packet Format(図4 )
本Packet Formatはコマンドバス(2109)へのアクセスを行なうためのものである。本パケットを用いることにより、COU(2001)より画像メモリ(2123)へのアクセスも可能である。
Command Packet Format (Figure 4)
This Packet Format is for accessing the command bus (2109). By using this packet, it is possible to access the image memory (2123) from the COU (2001).

ChipID(4004)にはコマンドパケットの送信先となる画像処理部(2149)を表すIDが格納される。   ChipID (4004) stores an ID representing the image processing unit (2149) that is the transmission destination of the command packet.

PageID(4007)、JobID(4008)はソフトウェアで管理するためのPage IDとJob IDを格納する。   PageID (4007) and JobID (4008) store Page ID and Job ID for software management.

Packet ID(4009)は1次元で表される。Data PacketのX-coordinateのみを使用する。   Packet ID (4009) is represented in one dimension. Use only Data Packet X-coordinate.

パケットバイトレングス(4010)は128Byte固定である。   The packet byte length (4010) is fixed at 128 bytes.

パケットデータ部(4002)には、アドレス(4011)とデータ(4012)の組を1つのコマンドとして、最大12個のコマンドを格納することが可能である。ライトかリードかのコマンドのタイプはCmdType(4005)で示され、コマンドの数はCmdnum(4006)で示される。   The packet data portion (4002) can store a maximum of 12 commands, with a set of address (4011) and data (4012) as one command. The command type for writing or reading is indicated by CmdType (4005), and the number of commands is indicated by Cmdnum (4006).

タイルの構成(図5 )
図5 において、左上からタイル座標及び画像の座標を定め、タイル座標および、画像座標は左上が(0,0)であるとする。図5 中でTile(0,0)等とあるものが一つのタイルを示し、その括弧内の数字がタイル座標(X, Y)を示す。タイル座標のX座標は左から右に行くにつれて増加し、タイル座標のY座標は上から下に行くにつれて増加するように定める。用紙サイズがA4(横)、解像度が600dpiで、1つのタイルの大きさが32×32pixelの場合、1ページ220(横)×156(縦)タイルとなる。
Tile composition (Figure 5)
In FIG. 5, it is assumed that tile coordinates and image coordinates are determined from the upper left, and that the tile coordinates and image coordinates are (0, 0) in the upper left. In FIG. 5, Tile (0, 0) or the like indicates one tile, and the numbers in parentheses indicate tile coordinates (X, Y). It is determined that the X coordinate of the tile coordinate increases from the left to the right, and the Y coordinate of the tile coordinate increases from the top to the bottom. When the paper size is A4 (horizontal), the resolution is 600 dpi, and the size of one tile is 32 × 32 pixels, one page has 220 (horizontal) × 156 (vertical) tiles.

第1のデータパケット、コマンドパケット(レジスタライト)、第2のデータパケット、コマンドパケット(レジスタリード(同期))、第3のデータパケット、コマンドパケット(レジスタリード(非同期))の順でパケットが画像処理部2149に入力された際の動作を説明する。説明のため、これら5つのパケットは、全て同じ解像度変換部2116に向けたパケットである。以下、順番に説明する。   Packets are displayed in the order of the first data packet, command packet (register write), second data packet, command packet (register read (synchronous)), third data packet, command packet (register read (asynchronous)) The operation when input to the processing unit 2149 will be described. For the sake of explanation, these five packets are all directed to the same resolution conversion unit 2116. Hereinafter, it demonstrates in order.

まず、第1のデータパケットが上記パケットDMAを用いて画像リングインターフェース1(2147)→画像リングインターフェース3(2101)の経路で画像処理部2149に入力される。入力された第1のデータパケットは画像リングインターフェース3(2101)からパケット振り分け部(2104)に転送される。   First, the first data packet is input to the image processing unit 2149 through the path of the image ring interface 1 (2147) → the image ring interface 3 (2101) using the packet DMA. The input first data packet is transferred from the image ring interface 3 (2101) to the packet distribution unit (2104).

次に、パケット振り分け部(2104)では上記第1のデータパケット内の、Packet Type ID (3004)と、パケットヘッダ(3001)内のProcessInstruction(3011)内のUnitID(3019)と、BusSel(3021)とを確認する。この場合、Packet Type ID(3004)はデータパケット、UnitID(3019)はタイル伸長部(2103)のユニットID、BusSel(3021)はデータバスの情報が設定されているため、この第1のデータパケットはまずタイル伸張部(2103) に送られる。   Next, in the packet distribution unit (2104), in the first data packet, Packet Type ID (3004), UnitID (3019) in Process Instruction (3011) in the packet header (3001), and BusSel (3021) And confirm. In this case, Packet Type ID (3004) is the data packet, UnitID (3019) is the unit ID of the tile expansion unit (2103), and BusSel (3021) is the data bus information, so this first data packet Is first sent to the tile stretcher (2103).

タイル伸張部(2103)での伸張動作中に、コマンドパケット(レジスタライト)がパケット振り分け部(2104)に入力されることになるが、このコマンドパケット内のパケットヘッダ情報はこのコマンドパケットがデータパケットと同期して動作すべきであるため、Packet Type ID (3004)がコマンドパケット、UnitID(3019)がタイル伸張部(2103)のユニットID、BusSel(3021)がデータバスに設定されている。このため、パケット振り分け部(2104)はタイル伸張部(2103)にこのコマンドパケットを転送しようとするが、上記のようにタイル伸張部(2103)は処理中であるため、次のデータを受け取ることができないため、パケット振り分け部内で留まる。   During the expansion operation in the tile expansion unit (2103), a command packet (register write) is input to the packet distribution unit (2104). The packet header information in this command packet is a data packet Therefore, Packet Type ID (3004) is set to the command packet, UnitID (3019) is set to the unit ID of the tile expansion unit (2103), and BusSel (3021) is set to the data bus. For this reason, the packet distribution unit (2104) tries to transfer this command packet to the tile expansion unit (2103). However, since the tile expansion unit (2103) is processing as described above, it receives the next data. It cannot stay in the packet distribution unit.

タイル伸張部(2103)での処理が完了すると伸張処理済みの第1のデータパケットはデータバスに転送され、上記コマンドパケットは始めてパケット振り分け部(2104)からタイル伸張部(2103)に転送される。転送された上記コマンドは同様にデータバスに転送される。本実施例の場合、コマンドパケットは圧縮されていないことを想定しているため、上記タイル伸張部(2103)では何も処理はされない。   When the processing in the tile decompression unit (2103) is completed, the first data packet that has been decompressed is transferred to the data bus, and the command packet is transferred from the packet distribution unit (2104) to the tile decompression unit (2103) for the first time. . The transferred command is similarly transferred to the data bus. In this embodiment, since it is assumed that the command packet is not compressed, the tile expansion unit (2103) does not perform any processing.

データバスに転送された第1のデータパケット及びコマンドパケット(レジスタライト)は順番に目的の解像度変換部2116に転送される。   The first data packet and command packet (register write) transferred to the data bus are sequentially transferred to the target resolution conversion unit 2116.

続いて第2のデータパケットが画像処理部(2149)に入力された場合、もしデータバス(2107)が何らかの原因で転送が停滞しているなどの理由でタイル伸張部2103が上記コマンドパケット(レジスタライト)をデータバス(2107)に対して出力できなかった場合を除き、上記第2のデータパケットはタイル伸張部(2103)に転送される。   Subsequently, when the second data packet is input to the image processing unit (2149), the tile decompression unit 2103 causes the command packet (register The second data packet is transferred to the tile expansion unit (2103) unless the write) cannot be output to the data bus (2107).

タイル伸張部(2103)に入力された第2のデータパケットは同様に伸張処理を施され、データバス(2107)に出力される。データバス(2107)に出力された場合、直前のコマンドパケット(レジスタライト)は解像度変換部2116にてレジスタ設定が完了しているはずであるため、確実に解像度変換部2116への機能変更が完了した後に、第2のデータパケットは自動的に解像度変換部2116に入力される。   The second data packet input to the tile expansion unit (2103) is similarly expanded and output to the data bus (2107). When output to the data bus (2107), the previous command packet (register write) must have already been registered in the resolution converter 2116, so the function change to the resolution converter 2116 has been completed without fail. After that, the second data packet is automatically input to the resolution converter 2116.

これにより、第1のデータパケットと第2のデータパケットは、解像度変換部2116において異なる動作モード・設定にて処理が行われる。   As a result, the first data packet and the second data packet are processed by the resolution conversion unit 2116 in different operation modes / settings.

このようにして、第1のデータパケットとコマンドパケット(レジスタライト)と第2のデータパケットの順番は保証され、上記コマンドパケットのレジスタアクセスは第1のデータパケット及び第2のデータパケットと同期して設定されることになる。   In this way, the order of the first data packet, the command packet (register write), and the second data packet is guaranteed, and the register access of the command packet is synchronized with the first data packet and the second data packet. Will be set.

また、上記3つのパケットを同期させるための手段は上記画像処理部249内のパイプライン構造を利用しているため、特別な手段を用いずに且つ各パケット間のインターバルが必要以上空くことなく行われる。   Further, the means for synchronizing the three packets uses the pipeline structure in the image processing unit 249, so that no special means are used and the interval between the packets is not increased more than necessary. Is called.

次にコマンドパケット(レジスタリード(同期))が画像処理部2149に入力される。   Next, a command packet (register read (synchronization)) is input to the image processing unit 2149.

このコマンドパケット内のパケットヘッダ情報はこのコマンドパケットがデータパケットと同期して動作すべきであるため、Packet Type ID (3004)がコマンドパケット、UnitID(3019)がタイル伸張部(2103)のユニットID、BusSel(3021)がデータバスに設定されている。このコマンドパケットも同様にデータバスを転送されるため、直前の第2のデータパケット及び直後の第3のデータパケットと同期して画像処理部2149に入力されるため、このコマンドパケットは各データパケットと同期してレジスタアクセスされる。   Since the packet header information in this command packet should operate in synchronization with the data packet, Packet Type ID (3004) is the command packet, UnitID (3019) is the unit ID of the tile expansion unit (2103) BusSel (3021) is set as the data bus. Since this command packet is also transferred on the data bus, the command packet is input to the image processing unit 2149 in synchronization with the immediately preceding second data packet and immediately following third data packet. Synchronously with the register access.

第3のデータパケットも第1、第2のデータパケットと同様にタイル伸張部(2103)にて慎重処理を行った後に、解像度変換部(2116)に送られ、処理が行われる。   Similarly to the first and second data packets, the third data packet is also carefully processed by the tile expansion unit (2103), and then sent to the resolution conversion unit (2116) for processing.

第3のデータパケットの後ないし処理中にコマンドパケット(レジスタリード(非同期))が画像処理部2149に入力された場合、このコマンドパケットのパケットヘッダのPacket Type ID(3004)はコマンドパケット、UnitID(3019)は解像度変換部(2116)のユニットID、BusSel(3021)はコマンドバスの情報が設定されているため、このコマンドパケット、タイル伸張部(2103) に送られずに、直接コマンドバスに転送される。コマンドバスに転送されたコマンドはパケット内のアドレス情報を元に直接、解像度変換部(2116)に送信される。   When a command packet (register read (asynchronous)) is input to the image processing unit 2149 after or during the third data packet, the packet type ID (3004) in the packet header of this command packet is the command packet, UnitID ( 3019) is the unit ID of the resolution conversion unit (2116), and BusSel (3021) is set to the command bus information, so this command packet is not sent to the tile expansion unit (2103), but directly transferred to the command bus. Is done. The command transferred to the command bus is transmitted directly to the resolution conversion unit (2116) based on the address information in the packet.

コマンドバス経由でアクセスされるコマンドはデータバス及びデータの画像処理の状態に関係なくレジスタアクセスを行なうことが可能であるため、解像度変換部(2116)の状態にかかわらず、内部レジスタへのアクセスをおこなう。   Commands accessed via the command bus can access the registers regardless of the status of the resolution converter (2116), because they can access the registers regardless of the status of the data bus and data image processing. Do it.

この場合、コマンドはリードコマンドであるため、例えば解像度変換部(2116)での処理中でのステータスレジスタのポーリング等に使用することができる。   In this case, since the command is a read command, it can be used, for example, for polling the status register during processing in the resolution conversion unit (2116).

レジスタから読み出された読み出し値は上記コマンドバスを戻り、パケット振り分け部(2104)まで転送され、ここで戻りのコマンドパケットが作成され、画像リングインターフェース4(2102)を経由して最終的にCPU2001に転送される。   The read value read from the register returns to the command bus and is transferred to the packet distribution unit (2104), where a return command packet is created, and finally the CPU 2001 via the image ring interface 4 (2102). Forwarded to

本実施例によれば、パケットヘッダ内のBusSel(3021)情報によって一意に転送されるバスが決定される。   According to this embodiment, the bus to be uniquely transferred is determined by the BusSel (3021) information in the packet header.

上記実施例では、リードコマンドでは同期/非同期の動作を行い、ライトコマンドでは同期動作のみを説明したが、パケットヘッダへの設定次第では非同期のライトコマンドを行なうことも可能である。   In the above embodiment, the read command performs a synchronous / asynchronous operation and the write command describes only the synchronous operation. However, an asynchronous write command can be performed depending on the setting in the packet header.

ただし、画像データと非同期にレジスタライトを行なう場合、レジスタライトコマンドの前後で、レジスタ値を変更された画像処理部の動作モードが変更されてしまうため、例えば同一ページ内でもページの前半と後半で画像の品質が著しく変化してしまうことが考えられる。例えば図7 のように、1ページ内の7003のタイミングでレジスタライトを行った場合、ページ前半の画像(7001)とページ後半の画像(7002)は画像品質が異なってしまう。   However, when register write is performed asynchronously with the image data, the operation mode of the image processing unit whose register value has been changed is changed before and after the register write command. It is conceivable that the image quality changes significantly. For example, as shown in FIG. 7, when register write is performed at the timing of 7003 in one page, the image quality of the first half image (7001) and the second half image (7002) is different.

このため、上記のようにならないよう、レジスタ設定を制御するソフトウェアで制御する必要がある。   For this reason, it is necessary to control with the software which controls the register setting so that it does not become above.

もしくは非同期ライトコマンドが設定された場合、すなわちコマンドパケットのパケットヘッダのPacket Type ID(3004)がコマンドパケット、BusSel(3021)がコマンドバスで、且つCmdType(4005)がライトであった場合は、パケット振り分け部にてエラーと判定し、割り込み信号にてCPU(2001)に通知するようにしても良い。   Or, if an asynchronous write command is set, that is, if Packet Type ID (3004) in the packet header of the command packet is a command packet, BusSel (3021) is a command bus, and CmdType (4005) is a write, The distribution unit may determine that an error has occurred and notify the CPU (2001) with an interrupt signal.

実施例1では画像データを転送するデータバスが、いわゆるバス結線(任意の画像処理部から任意の別の画像処理部に画像の転送を行なうことのできるバス)である場合で説明をした。本実施例ではデータバスが全ての画像処理ブロックを数珠つなぎに単一方向で接続するインターフェースである場合の説明をする。   In the first embodiment, the case where the data bus for transferring image data is a so-called bus connection (a bus capable of transferring an image from any image processing unit to any other image processing unit) has been described. In this embodiment, a case where the data bus is an interface that connects all the image processing blocks in a single direction by connecting them in a daisy chain will be described.

図8 に本実施例での画像処理部(2149と同等)のブロック図を示す。尚本実施例での説明に必要の無いブロック等は省略する。   FIG. 8 shows a block diagram of the image processing unit (equivalent to 2149) in this embodiment. Blocks and the like that are not necessary for the description in this embodiment are omitted.

又特に説明の無い部分については実施例1と同様とする。   Parts not specifically described are the same as in the first embodiment.

8001はデータバスであり、パケット振り分け部(2104)→タイル伸張部(2103)→多値化部(2119)→2値化部(2119)→色空間変換部(2117)→画像回転部(2030)→解像度変換部(2116)→タイル圧縮部の順に接続され、それぞれで画像処理を行いながら画像データを転送する。   Reference numeral 8001 denotes a data bus, which is a packet distribution unit (2104) → tile expansion unit (2103) → multi-value conversion unit (2119) → binarization unit (2119) → color space conversion unit (2117) → image rotation unit (2030) ) → resolution conversion unit (2116) → tile compression unit in this order, and the image data is transferred while performing image processing.

尚、一連のデータバスの内、処理が行われないブロックがある場合がある。例えば画像処理部(2149)に多値データが入力された場合、多値化部(2119)は特に処理をすることが無い。この場合、入力されたデータパケットは一旦多値化部(2119)に入力されるが、内部で処理を行なわずに次のブロックである2値化部(2118)に転送される。   There may be a block in the series of data buses where processing is not performed. For example, when multi-value data is input to the image processing unit (2149), the multi-value conversion unit (2119) does not particularly process. In this case, the input data packet is once input to the multi-value quantization unit (2119), but is transferred to the binarization unit (2118) which is the next block without being internally processed.

上記のように何も処理をせずに次のブロックに転送する機能は全ての画像処理ブロックに内蔵されており、その画像処理ブロックで処理を行なうか否かの判断はパケットヘッダ内のProcessInstruction(3011)のUnitIDがその画像処理ブロックに予め与えられたIDに該当するかどうかを判定することによって行われる。   The function of transferring to the next block without performing any processing as described above is built in all image processing blocks, and whether or not to perform processing in the image processing block is determined in ProcessInstruction ( 3011) is performed by determining whether or not the UnitID corresponds to an ID given in advance to the image processing block.

図9 に実施例2における画像処理部の内部ブロック図を示す。   FIG. 9 shows an internal block diagram of the image processing unit in the second embodiment.

図9 は図2 における画像処理部の1つを模式的に示したものである。処理内容に応じては画像処理部外にメモリ等を接続する場合があるが、説明が簡単になるよう簡略化した図を示す。   FIG. 9 schematically shows one of the image processing units in FIG. Depending on the processing contents, a memory or the like may be connected outside the image processing unit, but a simplified diagram is shown to simplify the description.

9010は画像処理部であり、内部にコマンドI/F(9021)、パケットInputI/F(9022)、レジスタ(9023)、画像処理ブロック(9024)、パケットOutputI/F(9025)を内包する。コマンドI/F(9021)はコマンドバス(9001)とレジスタアクセスバス(9002)に接続される。パケットInputI/F(9022)は入力データバス(9003)とコマンドパケット用バス(9004)とパケットフォワード用バス(9005)とデータパケット用バス(9006)に接続される。画像処理ブロック(9024)はデータパケット用バス(9006)と処理済みデータパケットバス(9007)に接続される。パケットOutputI/F(9025)はパケットフォワード用バス(9005)と処理済みデータパケットバス(9007)と出力データバス(9008)に接続される。   An image processing unit 9010 includes a command I / F (9021), a packet Input I / F (9022), a register (9023), an image processing block (9024), and a packet Output I / F (9025). The command I / F (9021) is connected to the command bus (9001) and the register access bus (9002). The packet Input I / F (9022) is connected to an input data bus (9003), a command packet bus (9004), a packet forward bus (9005), and a data packet bus (9006). The image processing block (9024) is connected to the data packet bus (9006) and the processed data packet bus (9007). The packet Output I / F (9025) is connected to the packet forward bus (9005), the processed data packet bus (9007), and the output data bus (9008).

実施例1で説明したように、コマンドバス9001を経由して転送されるものはコマンドのみとなる。コマンドI/Fは上記コマンド内に記載されたアドレスオフセット値を元に指定されたレジスタにアクセスを行なう。(リードライトとも)
また実施例1で説明したように、データバス9003を経由して転送されるものはデータパケットもしくはコマンドパケットのどちらかとなる。パケットInputI/F(9022)は受信した画像データのヘッダ部に記載されたPacketTypeを元にデータパケットかコマンドパケットかいずれかを判断する。
As described in the first embodiment, only commands are transferred via the command bus 9001. The command I / F accesses a designated register based on the address offset value described in the command. (With read / write)
In addition, as described in the first embodiment, the data transferred via the data bus 9003 is either a data packet or a command packet. The packet Input I / F (9022) determines whether it is a data packet or a command packet based on the PacketType described in the header part of the received image data.

転送されたパケットがコマンドパケットであると判断された場合、パケットInputI/F(9022)はさらにヘッダ内のProcessInstructionを確認し、この画像処理部9010へのコマンドかどうかを確認する。この画像処理部へのパケットであると判断された場合、このコマンドパケットは内部アドレス情報を元にレジスタ(9023)の指定されたアドレスに対してアクセスを行なう。この画像処理部へのパケットでないと判断された場合、パケットInputI/F(9022)はこのパケットをパケットフォワード用バス(9005)に転送する。   When it is determined that the transferred packet is a command packet, the packet Input I / F (9022) further confirms the Process Instruction in the header, and confirms whether or not this is a command to the image processing unit 9010. If it is determined that the packet is for the image processing unit, the command packet accesses the designated address in the register (9023) based on the internal address information. When it is determined that the packet is not sent to the image processing unit, the packet Input I / F (9022) transfers this packet to the packet forward bus (9005).

転送されたパケットがデータパケットであると判断された場合、パケットInputI/F(9022)はさらにヘッダ内のProcessInstructionを確認し、この画像処理部9010へのコマンドかどうかを確認する。この画像処理部へのパケットであると判断された場合、このデータパケットは画像処理ブロック(9024)に転送されその時点までにレジスタ(9023)に設定されている動作モードに沿って画像処理を行なう。処理を施されたデータパケットは処理済みデータパケットバス(9007)に転送される。この画像処理部へのパケットでないと判断された場合、パケットInputI/F(9022)はこのパケットをパケットフォワード用バス(9005)に転送する。   When it is determined that the transferred packet is a data packet, the packet Input I / F (9022) further confirms the Process Instruction in the header and confirms whether the command is for the image processing unit 9010. If it is determined that the packet is to be sent to the image processing unit, the data packet is transferred to the image processing block (9024), and image processing is performed in accordance with the operation mode set in the register (9023) until that point. . The processed data packet is transferred to the processed data packet bus (9007). When it is determined that the packet is not sent to the image processing unit, the packet Input I / F (9022) transfers this packet to the packet forward bus (9005).

以上のようにしてパケットOutputI/F(9025)に到達した各データ/コマンドパケットは次の画像処理部に転送される。   Each data / command packet that has reached the packet Output I / F (9025) as described above is transferred to the next image processing unit.

尚、データバスを経由して転送されてくるコマンドパケットは他のデータパケットと同期して転送されなければならないため、例えばデータパケット→コマンドパケットの順に、或る画像処理部に入力された場合で且つデータパケットは上記画像処理部にて処理を行い、コマンドパケットはこの上記画像処理部へのレジスタアクセスではない場合について考える。   The command packet transferred via the data bus must be transferred in synchronization with other data packets. For example, when the data packet is input to a certain image processing unit in the order of data packet → command packet. Consider a case where the data packet is processed by the image processing unit, and the command packet is not a register access to the image processing unit.

最初に転送されたデータパケットは上記画像処理部にて画像処理を施されるため、画像処理ブロック(9024)に送られ処理を開始する。この処理自体に時間が掛かる場合、上記データパケットが画像処理を完了しパケットOutputI/F(9025)に到着する前に、次のコマンドパケットが続いて上記画像処理部に入力されパケットフォワード用バス(9005)を介してパケットOutputI/Fに到着してしまう。このためこの画像処理ブロック内ではパケットの順番が入れ替わることになる。   Since the first transferred data packet is subjected to image processing by the image processing unit, it is sent to the image processing block (9024) to start processing. If this processing itself takes time, before the data packet completes the image processing and arrives at the packet Output I / F (9025), the next command packet is subsequently input to the image processing unit and the packet forward bus ( 9005) to arrive at the packet Output I / F. For this reason, the order of the packets is changed in the image processing block.

パケットOutputI/Fでは、到着したパケットを到着した順に出力データバス(9008)に出力した場合、次の画像処理部ではパケットの順序がコマンドパケット→データパケットの順になってしまい、上記データパケットが所望の画像処理動作モードで処理されないことになる。   In the packet Output I / F, when the arriving packets are output to the output data bus (9008) in the order of arrival, in the next image processing unit, the packet order is in the order of command packet → data packet, and the above data packet is desired. The image processing operation mode is not processed.

これを回避するために、画像処理ブロック(9024)はデータパケットを受け取って画像処理を開始した場合、画像処理中を示す信号をパケットOutputI/Fに対して出力する。この信号は処理が完了するまで出力され続けるものとする。この画像処理中信号を受信中にパケットフォワード用バスを介してコマンドパケットを受信した場合、パケットOutputI/F(9025)は上記画像データの画像処理が完了し出力データバスに出力が完了するまで上記コマンドパケットを外部に出力しないよう内部バッファに一時的に蓄積する。   In order to avoid this, when the image processing block (9024) receives the data packet and starts the image processing, it outputs a signal indicating that the image processing is in progress to the packet Output I / F. This signal continues to be output until the processing is completed. When a command packet is received via the packet forward bus while receiving this image processing signal, the packet Output I / F (9025) is used until the image processing of the image data is completed and output to the output data bus is completed. The command packet is temporarily stored in the internal buffer so as not to be output to the outside.

これにより、各画像処理にてパケットの順番が入れ替わることなく、出力画像品質を保証することが可能となる。   Thereby, it is possible to guarantee the output image quality without changing the order of the packets in each image processing.

尚、データパケット(該画像処理部で処理する)→データパケット(該画像処理部で処理しない)の順でパケットが入力された場合は、後者のデータパケット(該画像処理部で処理しない)は前者のデータパケット(該画像処理部で処理する)の完了を待つ必要は無い。   If a packet is input in the order of data packet (processed by the image processing unit) → data packet (not processed by the image processing unit), the latter data packet (not processed by the image processing unit) is There is no need to wait for completion of the former data packet (processed by the image processing unit).

上記パケットOutPutI/Fでの動作フローチャートを図10に示す。   FIG. 10 shows an operation flowchart of the packet OutPutI / F.

本実施例では、レジスタ(9023)は1つのみ用意されており、コマンドバス及びデータバスのいずれからもアクセスできるように構成されているが、レジスタを2つ用意し、一方はコマンドパケットからのアクセス専用、他方はデータパケットからのアクセス専用とするように構成しても良い。   In this embodiment, only one register (9023) is prepared and can be accessed from either the command bus or the data bus, but two registers are prepared, one of which is from the command packet. You may comprise so that it may be exclusive for access and the other may be exclusive for access from a data packet.

本件実施例で説明するシステム全体を説明する図The figure explaining the whole system demonstrated in a present Example 本件実施例1で説明するコントローラ全体のブロック図Block diagram of the entire controller described in the first embodiment 本件実施例で説明するデータパケットを説明する図The figure explaining the data packet demonstrated in a present Example 本件実施例で説明するコマンドパケットを説明する図The figure explaining the command packet demonstrated in a present Example 本件実施例で説明するページ内のタイル位置と画像の座標を説明する図The figure explaining the tile position in the page explained in this embodiment and the coordinates of the image 本件実施例で説明するパケットテーブルを説明する図The figure explaining the packet table demonstrated in a present Example 非同期ライトコマンドを実施した場合の処理後のイメージを説明する図Diagram explaining the image after processing when asynchronous write command is executed 本件実施例2で説明する画像処理部のブロック図Block diagram of the image processing unit described in the second embodiment 本件実施例2で説明する各画像処理部のブロック図Block diagram of each image processing unit described in the second embodiment 保健実施例2で説明するパケットの順番を保証するためのフローチャート図Flowchart diagram for guaranteeing the packet order described in the health embodiment 2

Claims (11)

画像処理を行なう画像処理装置において、画像データを転送し画像処理部に接続されるデータバスと、上記画像処理部への動作設定を行なうレジスタ部に接続されるコマンドバスと、上記画像処理装置の外部からデータの入出力を行なうデータI/F部と、
上記データI/F部に接続され、全ての入力データを上記データバスもしくはコマンドバスのいずれかに選択的に転送するためのデータ振り分け部と、
上記画像バス及びコマンドバスに接続される少なくとも1つ以上の画像処理部とを有し、
上記画像データ内部の情報に従って、該画像データを上記データバスもしくは上記コマンドバスのいずれかに自動的に転送することを特徴とする画像処理装置。
In an image processing apparatus that performs image processing, a data bus that transfers image data and is connected to an image processing unit, a command bus that is connected to a register unit that performs operation settings for the image processing unit, and Data I / F section for inputting / outputting data from outside,
A data distribution unit connected to the data I / F unit for selectively transferring all input data to either the data bus or the command bus;
And at least one image processing unit connected to the image bus and the command bus,
An image processing apparatus, wherein the image data is automatically transferred to either the data bus or the command bus according to information in the image data.
請求項1に記載の画像処理装置において、画像データは桝目状に分割して処理されることを特徴とする画像処理装置。   2. The image processing apparatus according to claim 1, wherein the image data is processed in a grid pattern. 請求項1に記載の画像処理装置において、画像データは、上記画像処理部にて画像処理を施されるデータパケットと、上記画像処理部の動作設定を行なうために用いられるコマンドパケットに分類されることを特徴とする画像処理装置。   2. The image processing apparatus according to claim 1, wherein the image data is classified into a data packet subjected to image processing by the image processing unit and a command packet used for setting operation of the image processing unit. An image processing apparatus. 請求項1に記載の画像処理装置において、上記画像データ内部の情報とは上記パケットデータ内に包含されるパケットヘッダであることを特徴とする画像処理装置。   2. The image processing apparatus according to claim 1, wherein the information in the image data is a packet header included in the packet data. 請求項4に記載の画像処理装置において、パケットヘッダは少なくとも複数の画像処理部のうちどの画像処理部にて処理を行なうかを指定する情報と、そのパケットがデータパケットなのかコマンドパケットなのかを示す情報と、そのパケットがコマンドバスかデータバスのいずれかを転送されるかを指定する情報とを有することを特徴とする画像処理装置。   5. The image processing apparatus according to claim 4, wherein the packet header includes information specifying which image processing unit to perform processing among at least a plurality of image processing units, and whether the packet is a data packet or a command packet. An image processing apparatus comprising: information indicating: information specifying whether the packet is transferred on a command bus or a data bus. 請求項1に記載の画像処理装置において、上記画像処理部はデータバス経由で受信したコマンドパケットを内部レジスタ部に振り分けることが可能であることを特徴とする画像処理装置。   2. The image processing apparatus according to claim 1, wherein the image processing unit can distribute a command packet received via a data bus to an internal register unit. 請求項1に記載の画像処理装置において、上記画像処理部は、データバス経由で該画像処理部に関係の無いパケットを受信した場合にそのまま出力することを特徴とする画像処理装置。   2. The image processing apparatus according to claim 1, wherein the image processing unit outputs the packet as it is when receiving a packet unrelated to the image processing unit via a data bus. 請求項1に記載の画像処理装置において、上記画像処理部は、データバス経由で該画像処理部に関係のあるデータパケットを受信した場合に、内部画像処理ブロックに転送することを特徴とする画像処理装置。   2. The image processing apparatus according to claim 1, wherein the image processing unit transfers to the internal image processing block when a data packet related to the image processing unit is received via the data bus. Processing equipment. 請求項1に記載の画像処理装置において、上記画像処理部はコマンドパケット経由で受信したコマンドデータを内部レジスタ部に振り分けることが可能であることを特徴とする画像処理装置。   The image processing apparatus according to claim 1, wherein the image processing unit can distribute command data received via a command packet to an internal register unit. 請求項1に記載の画像処理装置において、上記画像処理部内のレジスタ部は、上記データバス経由で受信したコマンドデータを用いてアクセスされる第1のレジスタ部と、上記コマンドバス経由で 受信したコマンドデータを用いてアクセスされる第2のレジスタ部とに分割されていることを特徴とする画像処理装置。   2. The image processing apparatus according to claim 1, wherein the register unit in the image processing unit includes a first register unit accessed using the command data received via the data bus and a command received via the command bus. An image processing apparatus that is divided into a second register unit that is accessed using data. 請求項1に記載の画像処理装置において、上記画像処理部内にてコマンドデータと画像データの順番が入れ替わらないよう、画像データ処理中に受信したコマンドデータの転送を前記画像データ処理転送完了まで待機することを特徴とする画像処理装置。   2. The image processing apparatus according to claim 1, wherein the command data received during the image data processing is waited for completion of the image data processing transfer so that the order of the command data and the image data is not switched in the image processing unit. An image processing apparatus.
JP2006061358A 2006-03-07 2006-03-07 Image processor Withdrawn JP2007243444A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006061358A JP2007243444A (en) 2006-03-07 2006-03-07 Image processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006061358A JP2007243444A (en) 2006-03-07 2006-03-07 Image processor

Publications (1)

Publication Number Publication Date
JP2007243444A true JP2007243444A (en) 2007-09-20

Family

ID=38588554

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006061358A Withdrawn JP2007243444A (en) 2006-03-07 2006-03-07 Image processor

Country Status (1)

Country Link
JP (1) JP2007243444A (en)

Similar Documents

Publication Publication Date Title
JP4065503B2 (en) Image processing apparatus, image input / output apparatus, scaling process method, and memory control method
US7193738B2 (en) Image processing apparatus and method
JP2003256179A (en) Image processing apparatus and image processing method
JP2003316714A (en) Apparatus and method for information processing
JP3907471B2 (en) Image input / output controller
JP5272601B2 (en) Image forming apparatus and data transfer method
JP2007243444A (en) Image processor
JP2004122376A (en) Image formation controller, its image formation controlling method, program and storage medium
JP4065550B2 (en) Image input / output control device, image processing device, image processing method in image input / output control device, and image processing method in image processing device
JP3958141B2 (en) Image processing device
JP2003241983A (en) Information processor and information processing method
JP3703431B2 (en) Data communication apparatus, image processing apparatus, data communication method, and data communication method in image processing apparatus
JP2006166102A (en) Multifunction system controller
JP2018118477A (en) Image processing device, control method and program of the same
JP2003196044A (en) Image processing method and its device
JP2005006000A (en) Image processing system
JP2006229306A (en) Image processing apparatus
JP2004128913A (en) Image processor, control method of the image processor, and computer-readable storage medium storing program for executing the method
JP2004343202A (en) Image processor
JP2003331279A (en) Image processor
JP2003348338A (en) Information processing apparatus
JP2004157609A (en) Image processing apparatus and image processing system
JP2003304381A (en) Information processor and data transfer method
JP2004229066A (en) Image forming device
JP2004253906A (en) Expanding apparatus

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: 20090512