JP6331735B2 - Image processing apparatus and image processing apparatus control method - Google Patents

Image processing apparatus and image processing apparatus control method Download PDF

Info

Publication number
JP6331735B2
JP6331735B2 JP2014119700A JP2014119700A JP6331735B2 JP 6331735 B2 JP6331735 B2 JP 6331735B2 JP 2014119700 A JP2014119700 A JP 2014119700A JP 2014119700 A JP2014119700 A JP 2014119700A JP 6331735 B2 JP6331735 B2 JP 6331735B2
Authority
JP
Japan
Prior art keywords
image
image data
image processing
storage medium
read
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.)
Expired - Fee Related
Application number
JP2014119700A
Other languages
Japanese (ja)
Other versions
JP2015233235A (en
Inventor
太一 吉岡
太一 吉岡
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2014119700A priority Critical patent/JP6331735B2/en
Publication of JP2015233235A publication Critical patent/JP2015233235A/en
Application granted granted Critical
Publication of JP6331735B2 publication Critical patent/JP6331735B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Bus Control (AREA)
  • Information Transfer Systems (AREA)
  • Facsimiles In General (AREA)
  • Storing Facsimile Image Data (AREA)

Description

本発明は、画像処理装置及び画像処理装置の制御方法に関し、特に、メモリリードのレイテンシ削減のための処理に関する。   The present invention relates to an image processing apparatus and a control method for the image processing apparatus, and more particularly to processing for reducing latency of a memory read.

近年、情報の電子化が推進される傾向にあり、電子化された情報の出力に用いられるプリンタやファクシミリ及び書類の電子化に用いるスキャナ等の画像処理装置は欠かせない機器となっている。このような画像処理装置は、撮像機能、画像形成機能及び通信機能等を備えることにより、プリンタ、ファクシミリ、スキャナ、複写機として利用可能な複合機として構成されることが多い。   In recent years, there has been a tendency to digitize information, and image processing apparatuses such as printers and facsimiles used for outputting digitized information and scanners used for digitizing documents have become indispensable devices. Such an image processing apparatus is often configured as a multifunction machine that can be used as a printer, a facsimile, a scanner, or a copier by providing an imaging function, an image forming function, a communication function, and the like.

このような画像処理装置においては、プリント処理やスキャナ処理等のライン等時性を確保する必要がある処理もあれば、画像処理装置に蓄積された画像データのフォーマットを変換してPC(Personal Computer)に送信する等のライン及びページの等時性の確保を必要としない処理もある。ライン及びページの等時性の確保を必要としない処理は、オプション機能として別デバイス(以下、「オプションデバイス」とする)で構成される場合があり、必要に応じてオプションデバイスが画像処理装置のメインチップのバスに接続されて用いられる場合がある。   In such an image processing apparatus, there is a process that needs to ensure line isochronism, such as a print process or a scanner process, or a PC (Personal Computer) that converts the format of image data stored in the image processing apparatus. There is also a process that does not require ensuring isochronism of lines and pages. A process that does not require the isochronism of lines and pages may be configured as a separate device (hereinafter referred to as an “optional device”) as an optional function. It may be used by being connected to the bus of the main chip.

画像処理装置のメインチップは、近年高速シリアルI/Fに置き換わっている一方、上述のようなオプションデバイスは、過去に開発されたパラレルバスI/Fのデバイスのままである場合も多い。この場合、オプションデバイスをメインチップのバスに接続するためには、オプションデバイスとメインチップのバスとの間に、高速シリアルI/FとパラレルバスI/Fとを変換する変換ブリッジを設ける必要がある。また、複数のオプションデバイスがメインチップのバスに接続される場合は、変換ブリッジの他にスイッチを設ける必要がある。   In recent years, the main chip of the image processing apparatus has been replaced with a high-speed serial I / F. On the other hand, the above-described optional device often remains a device of a parallel bus I / F developed in the past. In this case, in order to connect the option device to the bus of the main chip, it is necessary to provide a conversion bridge for converting the high-speed serial I / F and the parallel bus I / F between the option device and the bus of the main chip. is there. When a plurality of option devices are connected to the main chip bus, it is necessary to provide a switch in addition to the conversion bridge.

このようなオプションデバイスを、変換ブリッジ及びスイッチを介してメインチップのバスに接続する場合、オプションデバイスとメインメモリとの距離が遠いので、リードアクセスのレイテンシがさらに大きくなり、メモリリードのパフォーマンスが悪化する。   When such an optional device is connected to the bus of the main chip via a conversion bridge and a switch, since the distance between the optional device and the main memory is long, the read access latency is further increased and the performance of the memory read is deteriorated. To do.

メモリリードレイテンシを増加させることなくデバイスによるメモリアクセスを効率良く実行可能にすることを目的として、アクセス履歴またはアクセス特性情報を参照し、連続メモリ領域をアクセスする傾向にある場合にのみ、メモリリード要求で指定されたメモリ領域に加え、該メモリ領域に連続するメモリ領域のデータを先行して読出す制御を行い、連続メモリ領域をアクセスする傾向にない場合は、指定されたメモリ領域のみのデータ読出しを実行することが開示されている(例えば、特許文献1を参照)。   Memory read request only when there is a tendency to access the continuous memory area with reference to access history or access characteristic information for the purpose of enabling efficient memory access by the device without increasing memory read latency. In addition to the memory area specified in (1), the data in the memory area continuous to the memory area is read in advance, and if there is no tendency to access the continuous memory area, the data is read only from the specified memory area. Is disclosed (for example, refer to Patent Document 1).

また、データの等時性と複数のアプリケーションの生産性の向上を図ることを目的として、画像データの主走査サイズが格納可能な複数のラインメモリの状態を監視して、データの格納されるメモリへのアクセス要求を調停するアービタに対するメモリリード要求の発行を、該ラインメモリの監視結果に基づいて制御することが開示されている(例えば、特許文献2を参照)。   In addition, for the purpose of improving the isochronism of data and the productivity of a plurality of applications, the memory for storing data is monitored by monitoring the states of a plurality of line memories capable of storing the main scan size of image data. It is disclosed to control the issuance of a memory read request to an arbiter that arbitrates an access request to an access based on the monitoring result of the line memory (see, for example, Patent Document 2).

上述のような画像処理装置におけるリードアクセスのレイテンシを削減するために、メインメモリとメインチップのバスに接続されている各オプションデバイスとの間にそれぞれバッファを設けて、メインメモリのデータをバッファに予め転送しておくことが考えられる。これにより、オプションデバイスは、メインメモリに直接アクセスするのではなく、バッファに転送されたデータをリードすることで、レイテンシを削減することが考えられる。しかしながら、この場合、オプションデバイスそれぞれに対してバッファやバッファにデータを転送するためのDMAC(Direct Memory Access Controller)を設ける必要があるので、回路規模が増加してしまう。   In order to reduce the latency of read access in the image processing apparatus as described above, a buffer is provided between the main memory and each optional device connected to the bus of the main chip, and the data in the main memory is used as a buffer. It may be possible to transfer in advance. As a result, the option device may reduce the latency by reading the data transferred to the buffer instead of directly accessing the main memory. However, in this case, it is necessary to provide a buffer and a DMAC (Direct Memory Access Controller) for transferring data to each option device, which increases the circuit scale.

特許文献1及び特許文献2に開示された技術では、DMAC及びバッファを使用することによる回路規模の増加については考慮されていない。   In the techniques disclosed in Patent Document 1 and Patent Document 2, an increase in circuit scale due to the use of a DMAC and a buffer is not considered.

本発明は、このような課題を解決するためになされたものであり、画像処理装置における回路規模の増加を抑えつつ、画像処理装置に接続されたデバイスによるメモリリードのレイテンシを削減することを目的とする。   The present invention has been made to solve such a problem, and an object of the present invention is to reduce the latency of a memory read by a device connected to the image processing apparatus while suppressing an increase in circuit scale in the image processing apparatus. And

上記課題を解決するために、本発明の一態様は、画像データを格納する画像記憶媒体から画像データを取得して処理する画像処理部を複数含む画像処理装置であって、処理されるべき画像データを読み出す読出命令に従って前記画像記憶媒体から画像データを読み出し、該画像データを格納する記憶媒体である処理対象画像記憶媒体に、読み出した該画像データを記憶させるデータ記憶処理部と、前記複数の画像処理部の1つが取得するべき画像データの前記画像記憶媒体における記憶領域を示す所定の制御情報を格納する記憶媒体である制御情報記憶媒体に、前記所定の制御情報を記憶させる記憶媒体制御部と、前記複数の画像処理部の動作状況に応じて、前記複数の画像処理部のうち、前記所定の制御情報において示されている記憶領域から画像データを取得するべき画像処理部に前記処理対象画像記憶媒体から画像データを取得させるように切り替える切替制御部とを含むことを特徴とする。   In order to solve the above problems, an aspect of the present invention is an image processing apparatus including a plurality of image processing units that acquire and process image data from an image storage medium that stores the image data, and the image to be processed A data storage processing unit that reads image data from the image storage medium in accordance with a read command for reading data and stores the read image data in a processing target image storage medium that is a storage medium for storing the image data; A storage medium control unit that stores the predetermined control information in a control information storage medium that stores predetermined control information indicating a storage area in the image storage medium of image data to be acquired by one of the image processing units And a storage area indicated in the predetermined control information among the plurality of image processing units according to the operation status of the plurality of image processing units. Characterized in that it comprises a switching control unit for switching from said processed image storage medium to the image processing unit should get Luo image data so as to acquire image data.

本発明によれば、画像処理装置における回路規模の増加を抑えつつ、画像処理装置に接続されたデバイスによるメモリリードのレイテンシを削減することができる。   According to the present invention, it is possible to reduce the latency of memory read by a device connected to the image processing apparatus while suppressing an increase in circuit scale in the image processing apparatus.

本発明の実施形態に係る画像処理装置の従来からの構成を例示するブロック図である。1 is a block diagram illustrating a conventional configuration of an image processing apparatus according to an embodiment of the present invention. 本発明の実施形態に係る画像処理装置におけるメモリリードアクセスの態様を例示する図である。It is a figure which illustrates the aspect of the memory read access in the image processing apparatus which concerns on embodiment of this invention. 本発明の実施形態に係る画像処理装置におけるメインメモリ20とオプションデバイスとを接続する経路を例示する図である。It is a figure which illustrates the path | route which connects the main memory 20 and the option device in the image processing apparatus which concerns on embodiment of this invention. 本発明の実施形態に係る画像処理装置における動作の比較例としてオプションデバイス及びエンジンASICそれぞれがメインメモリに記憶されている画像データを読み出す場合のパスを例示する図である。It is a figure which illustrates the path | pass in case each of the option device and engine ASIC reads the image data memorize | stored in the main memory as a comparative example of the operation | movement in the image processing apparatus which concerns on embodiment of this invention. 本発明の実施形態に係る画像処理装置における動作の比較例としてオプションデバイスがメインメモリに記憶されている画像データを読み出す場合の従来の動作例を示すシーケンス図である。FIG. 10 is a sequence diagram illustrating a conventional operation example when the option device reads image data stored in the main memory as a comparative example of the operation in the image processing apparatus according to the embodiment of the present invention. 本発明の実施形態に係る画像処理装置においてエンジンASICがメインメモリに記憶されている画像データを読み出す場合の動作例を示すシーケンス図である。It is a sequence diagram which shows the operation example in case the engine ASIC reads the image data memorize | stored in the main memory in the image processing apparatus which concerns on embodiment of this invention. 本発明の実施形態に係る画像処理装置におけるエンジンASICのDMACレジスタに設定されているリードアクセスのアドレスの位置を例示する図である。It is a figure which illustrates the position of the address of the read access set to the DMAC register of engine ASIC in the image processing apparatus which concerns on embodiment of this invention. 本発明の実施形態に係る画像処理装置の構成を例示するブロック図である。1 is a block diagram illustrating a configuration of an image processing apparatus according to an embodiment of the present invention. 本発明の実施形態に係るオプションデバイスに関する情報を例示するテーブルである。It is a table which illustrates the information regarding the option device which concerns on embodiment of this invention. 本発明の実施形態に係るレジスタ制御部によるレジスタ制御を例示するフローチャートである。It is a flowchart which illustrates the register control by the register control part which concerns on embodiment of this invention. 本発明の実施形態に係るTLPのメモリリードコマンドのヘッダ構造を例示する図である。It is a figure which illustrates the header structure of the memory read command of TLP which concerns on embodiment of this invention. 本発明の実施形態に係るアクセス制御部の処理を例示するフローチャートである。It is a flowchart which illustrates the process of the access control part which concerns on embodiment of this invention. 本発明の実施形態に係る画像処理装置におけるオプションデバイスがメインメモリに記憶されている画像データを読み出す場合のパスを例示する図である。It is a figure which illustrates the path | pass when the option device in the image processing apparatus which concerns on embodiment of this invention reads the image data memorize | stored in the main memory. 本発明の実施形態に係る画像処理装置における動作例を示すシーケンス図である。It is a sequence diagram which shows the operation example in the image processing apparatus which concerns on embodiment of this invention. 本発明の実施形態に係る画像処理装置における動作例を示すシーケンス図である。It is a sequence diagram which shows the operation example in the image processing apparatus which concerns on embodiment of this invention.

以下、図面を参照して、本発明の実施形態を詳細に説明する。本実施形態においては、オプションデバイスがバスを介してメインチップに接続されている画像処理装置を例として説明する。また、本実施形態においては、オプションデバイスが行う処理は、画像データのフォーマットを変換してPCに送信する等のライン及びページの等時性の確保を必要としない処理であり、以降「オプション処理」とする。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In the present embodiment, an image processing apparatus in which an optional device is connected to the main chip via a bus will be described as an example. In the present embodiment, the process performed by the option device is a process that does not require the isochronism of lines and pages, such as converting the format of image data and transmitting it to the PC. "

図1は、本実施形態に係る画像処理装置1の従来からの構成を例示するブロック図である。図1に示すように、画像処理装置1は、メインチップであるコントローラASIC(Application Specific Integrated Circuit)100、オプション処理を行う画像処理部であるオプションデバイス120(以降、「オプションA」とする)、オプション処理を行う画像処理部であるオプションデバイス130(以降、「オプションB」とする)、SoC(System−on−a−Chip)10、メインメモリ20、スイッチ30、ブリッジ40、プリンタ処理やスキャナ処理等のライン等時性の確保を必要とする処理を行う画像処理部であるエンジンASIC140及びエンジンASIC140を制御するCPU(Central Processing Unit)50を含む。   FIG. 1 is a block diagram illustrating a conventional configuration of an image processing apparatus 1 according to this embodiment. As shown in FIG. 1, an image processing apparatus 1 includes a controller ASIC (Application Specific Integrated Circuit) 100 that is a main chip, an option device 120 that is an image processing unit that performs option processing (hereinafter, referred to as “option A”), An option device 130 (hereinafter referred to as “option B”), an SoC (System-on-a-Chip) 10, a main memory 20, a switch 30, a bridge 40, a printer process and a scanner process, which are image processing units that perform option processing The engine ASIC 140 that is an image processing unit that performs processing that requires ensuring the isochronism of the line and the like, and a CPU (Central Processing Unit) 50 that controls the engine ASIC 140 are included.

SoC10は、コントローラASIC100、オプションA及びオプションBを制御するCPU(Central Processing Unit)やメインメモリ20のインタフェース、USB(Universal Serial Bus)やEthernet(登録商標)等のデータ入出力のインタフェースを備える。メインメモリ20は、画像処理装置1を制御するためのプログラム、画像データを格納するとともに、CPUのワーク領域として用いられる。すなわち、メインメモリ20は、画像データを格納する記憶媒体である画像記憶媒体として機能する。   The SoC 10 includes a controller ASIC 100, a CPU (Central Processing Unit) that controls option A and option B, an interface of the main memory 20, and a data input / output interface such as USB (Universal Serial Bus) and Ethernet (registered trademark). The main memory 20 stores a program for controlling the image processing apparatus 1 and image data, and is used as a work area of the CPU. That is, the main memory 20 functions as an image storage medium that is a storage medium for storing image data.

スイッチ30は、1つのシリアルバスI/Fを分岐させて、複数のシリアルバスI/FのデバイスとコントローラASIC100との接続を切り替える。ブリッジ40は、パラレルバスI/Fによる接続とシリアルバスI/Fによる接続とを変換する。例えば、オプションAは、パラレルバスI/Fによる接続に対応しているので、パラレルバスI/Fによる接続154がブリッジ40を介してシリアルバスI/Fによる接続に変換されてスイッチ30に接続されることにより、コントローラASIC100と接続される。一方、オプションBは、シリアルバスI/Fによる接続に対応しているので、スイッチ30とシリアルバス接続155により直接接続されることにより、コントローラASIC100と接続される。   The switch 30 branches one serial bus I / F and switches the connection between a plurality of serial bus I / F devices and the controller ASIC 100. The bridge 40 converts the connection by the parallel bus I / F and the connection by the serial bus I / F. For example, since option A corresponds to a connection via the parallel bus I / F, the connection 154 via the parallel bus I / F is converted to a connection via the serial bus I / F via the bridge 40 and connected to the switch 30. Thus, the controller ASIC 100 is connected. On the other hand, since option B corresponds to connection via the serial bus I / F, it is connected to the controller ASIC 100 by being directly connected to the switch 30 via the serial bus connection 155.

コントローラASIC100は、シリアル通信部101、102、103、DMAC(Direct Memory Access Controller)レジスタ104、リードDMAC105、出力画像編集部106及び出力データバッファ107を含む。また、シリアル通信部101、シリアル通信部102、DMACレジスタ104、リードDMAC105は、内部バス108を介して互いに接続されている。   The controller ASIC 100 includes serial communication units 101, 102, and 103, a DMAC (Direct Memory Access Controller) register 104, a read DMAC 105, an output image editing unit 106, and an output data buffer 107. The serial communication unit 101, serial communication unit 102, DMAC register 104, and read DMAC 105 are connected to each other via an internal bus 108.

シリアル通信部101は、コントローラASIC100とSoC10とを接続するインタフェースであり、これによりシリアルバス接続151が確立される。シリアル通信部102は、コントローラASIC100とスイッチ30とを接続するインタフェースであり、これにより、シリアルバス接続152が確立される。シリアル通信部103は、コントローラASIC100と後述するエンジンASIC140のシリアル通信部141とを接続するインタフェースであり、これによりシリアルバス接続156が確立される。   The serial communication unit 101 is an interface that connects the controller ASIC 100 and the SoC 10, and thereby a serial bus connection 151 is established. The serial communication unit 102 is an interface that connects the controller ASIC 100 and the switch 30, and thereby a serial bus connection 152 is established. The serial communication unit 103 is an interface that connects the controller ASIC 100 and a serial communication unit 141 of an engine ASIC 140 described later, and thereby a serial bus connection 156 is established.

DMACレジスタ104は、後述するリードDMAC105を制御するための制御情報を格納する記憶媒体(制御情報記憶媒体)であり、SoC10によりシリアルバス接続151を介して制御情報が設定される。制御情報は、例えば、メインメモリ20から読み出す画像データの開始アドレス、画像データのイメージ幅、ライン数である。すなわち、制御情報は、オプションA、オプションB及びエンジンASIC140等の画像処理部が取得するべき画像データのメインメモリ20における記憶領域を示す所定の制御情報である。   The DMAC register 104 is a storage medium (control information storage medium) for storing control information for controlling the read DMAC 105 described later, and the control information is set via the serial bus connection 151 by the SoC 10. The control information is, for example, the start address of image data read from the main memory 20, the image width of the image data, and the number of lines. That is, the control information is predetermined control information indicating storage areas in the main memory 20 of image data to be acquired by the image processing unit such as option A, option B, and engine ASIC 140.

リードDMAC105は、SoC10からの制御により起動し、リードコマンドDMACレジスタ104に記憶されている制御情報に従ってメインメモリ20に記憶されている画像データを読み出し、後段のブロックへ出力する。出力画像編集部106は、必要に応じて、リードDMAC105により読み出された画像データの端部の削除や追加等の編集処理を行い、出力データバッファ107に対して出力する。すなわち、リードDMAC105は、読出命令に従ってメインメモリ20から画像データを読み出して、出力データバッファに記憶させるデータ記憶処理部として機能する。   The read DMAC 105 is activated by the control from the SoC 10, reads the image data stored in the main memory 20 according to the control information stored in the read command DMAC register 104, and outputs it to the subsequent block. The output image editing unit 106 performs editing processing such as deletion or addition of the end of the image data read by the read DMAC 105 as necessary, and outputs the result to the output data buffer 107. That is, the read DMAC 105 functions as a data storage processing unit that reads image data from the main memory 20 according to a read command and stores it in the output data buffer.

出力データバッファ107は、出力画像編集部106から出力された画像データを格納する記憶媒体である。すなわち、出力データバッファ107は、リードDMAC105によりメインメモリ20から読み出された処理されるべき画像データを予め格納する処理対象画像記憶媒体として機能する。出力データバッファ107に記憶された画像データは、シリアルバス接続156を介して、後述するエンジンASIC140のリードDMAC143により読み出される。   The output data buffer 107 is a storage medium that stores the image data output from the output image editing unit 106. That is, the output data buffer 107 functions as a processing target image storage medium that stores in advance the image data to be processed read from the main memory 20 by the read DMAC 105. The image data stored in the output data buffer 107 is read by the read DMAC 143 of the engine ASIC 140 described later via the serial bus connection 156.

オプションAは、パラレル通信部121、DMACレジスタ122、リードDMAC123、オプション処理部124及びライトDMAC125を含む。パラレル通信部121は、パラレルバス接続を行うためのインタフェースである。DMACレジスタ122は、後述するリードDMAC123を制御するための制御情報を格納する記憶媒体であり、SoC10によりコントローラASIC100(シリアルバス接続151)、スイッチ30(シリアルバス接続152)及びブリッジ40(パラレルバス接続154)を介して設定される。   The option A includes a parallel communication unit 121, a DMAC register 122, a read DMAC 123, an option processing unit 124, and a write DMAC 125. The parallel communication unit 121 is an interface for performing parallel bus connection. The DMAC register 122 is a storage medium for storing control information for controlling the read DMAC 123 to be described later. The SoC 10 controls the controller ASIC 100 (serial bus connection 151), the switch 30 (serial bus connection 152), and the bridge 40 (parallel bus connection). 154).

リードDMAC123は、SoC10からの制御により起動し、DMACレジスタ122に記憶されている制御情報に従ってメインメモリ20に記憶されている画像データを読み出し、オプション処理部124に対して出力する。オプション処理部124は、リードDMAC123により読み出された画像データに対してオプション処理を行い、ライトDMAC125に対して出力する。オプション処理は、例えば、画像のフォーマット変換(RGB(Red,Green,Blue)及びCMYK(Cyan,Magenta,Yellow,blacK)相互の色変換)、圧縮、伸長、縮小、拡大である。   The read DMAC 123 is activated by the control from the SoC 10, reads the image data stored in the main memory 20 in accordance with the control information stored in the DMAC register 122, and outputs the image data to the option processing unit 124. The option processing unit 124 performs an option process on the image data read by the read DMAC 123 and outputs it to the write DMAC 125. The option processing is, for example, image format conversion (RGB (Red, Green, Blue) and CMYK (Cyan, Magenta, Yellow, blackK) mutual color conversion), compression, expansion, reduction, and enlargement.

ライトDMAC125は、オプション処理部124により処理された画像データを、メインメモリ20に書き込む。なお、オプションBは、スイッチ30とシリアルバス接続されるので、オプションAのパラレル通信部121がシリアル通信部に置換される以外は、オプションAの構成と同様の構成である。   The write DMAC 125 writes the image data processed by the option processing unit 124 into the main memory 20. Since option B is connected to the switch 30 through a serial bus, the configuration is the same as that of option A except that the parallel communication unit 121 of option A is replaced with a serial communication unit.

エンジンASIC140は、シリアル通信部141、DMACレジスタ142及びリードDMAC143を含む。シリアル通信部141は、エンジンASIC140とコントローラASIC100とを接続するためのインタフェースであり、これによりシリアルバス接続156が確立される。   The engine ASIC 140 includes a serial communication unit 141, a DMAC register 142, and a read DMAC 143. The serial communication unit 141 is an interface for connecting the engine ASIC 140 and the controller ASIC 100, and thereby a serial bus connection 156 is established.

DMACレジスタ142は、後述するリードDMAC143を制御するための制御情報を格納する記憶媒体であり、エンジンCPU50から設定される。リードDMAC143は、エンジンCPU50からの制御により起動し、DMACレジスタ142に記憶されている制御情報に従って、メインメモリ20又は出力データバッファ107に記憶されている画像データを読み出す。   The DMAC register 142 is a storage medium that stores control information for controlling the read DMAC 143 described later, and is set by the engine CPU 50. The read DMAC 143 is activated by control from the engine CPU 50, and reads image data stored in the main memory 20 or the output data buffer 107 in accordance with control information stored in the DMAC register 142.

なお、リードDMAC143により読み出された画像データは、例えば、エンジンASIC140に含まれる図示しない処理部によりプリント処理、スキャナ処理、スキャナ処理により読み取られた画像の補正処理等が行われる。また、エンジンASIC140に含まれる処理部により処理された画像(例えば、スキャナ処理により生成された読取画像)は、図示しないライトDMACによりメインメモリ20に書き込まれてもよい。   The image data read by the read DMAC 143 is subjected to, for example, print processing, scanner processing, correction processing of an image read by the scanner processing, and the like by a processing unit (not shown) included in the engine ASIC 140. Further, an image processed by a processing unit included in the engine ASIC 140 (for example, a read image generated by a scanner process) may be written in the main memory 20 by a write DMAC (not shown).

上述したリードDMAC105、123、143は、リードコマンドを発行することにより、メインメモリ20からバスを介してリードコマンドに従って転送されるリードデータ(読出しデータ)を取得する(以降、このような処理を「メモリリードアクセス」とする)。メモリリードアクセスには、スプリットトランザクション型及びインターロック型がある。   The read DMACs 105, 123, and 143 described above acquire read data (read data) transferred from the main memory 20 according to the read command via the bus by issuing a read command (hereinafter, such processing is referred to as “ Memory read access ”). Memory read access includes split transaction type and interlock type.

図2は、メモリリードアクセスの態様を例示する図である。図2(a)は、スプリットトランザクション型のメモリリードアクセスの態様を例示する図であり、図2(b)は、インターロック型のメモリリードアクセスの態様を例示する図である。   FIG. 2 is a diagram illustrating an example of memory read access. FIG. 2A is a diagram illustrating a split transaction type memory read access mode, and FIG. 2B is a diagram illustrating an interlock type memory read access mode.

スプリットトランザクション型のメモリリードアクセスでは、リードコマンドに従ってリードデータの転送が完了する前に、次のリードコマンドを発行することができる。例えば、図2(a)に示すように、まず、リードコマンド0(RC0)に従って転送されるリードデータ0(RD0)の転送が完了する前に、リードコマンド1(RC1)及びリードコマンド2(RC2)が順に発行される。以降、RC0に従いRD0の転送が完了すると、先に発行したすべてのリードコマンドに対するリードデータの転送が完了する前に、RC3が発行される。同様に、RC1に従いRD1の転送が完了するとRC4が発行され、RC2に従いRD2の転送が完了するとRC5が発行される。   In the split transaction type memory read access, the next read command can be issued before the read data transfer is completed according to the read command. For example, as shown in FIG. 2A, first, before the transfer of the read data 0 (RD0) transferred according to the read command 0 (RC0) is completed, the read command 1 (RC1) and the read command 2 (RC2) ) Are issued in order. Thereafter, when the transfer of RD0 is completed according to RC0, RC3 is issued before the transfer of read data for all read commands issued previously is completed. Similarly, RC4 is issued when transfer of RD1 is completed according to RC1, and RC5 is issued when transfer of RD2 is completed according to RC2.

このように、スプリットトランザクション型のメモリリードアクセスでは、リードデータの転送が完了する前に、複数のリードコマンドを先行して発行することができるので、メモリリードアクセスのレイテンシTが大きい場合であっても、効率よくリードデータを転送することができ、メモリリードのパフォーマンスが向上する。   As described above, in the split transaction type memory read access, a plurality of read commands can be issued in advance before the read data transfer is completed, so that the memory read access latency T is large. However, the read data can be transferred efficiently, and the performance of the memory read is improved.

一方、インターロック型のメモリリードアクセスでは、リードコマンドに従ってリードデータの転送が完了するまでバスが使用できず、次のリードコマンドを発行することができない。例えば、図2(b)に示すように、リードコマンド0(RC0)に従ってリードデータ0(RD0)の転送が完了した後に、リードコマンド1(RC1)が発行される。そして、RC1に従ってリードデータ1(RD1)の転送が完了した後に、リードコマンド(RC2)が発行される。そして、RC2に従ってリードデータ2(RD2)の転送が完了する。   On the other hand, in interlock type memory read access, the bus cannot be used until read data transfer is completed according to the read command, and the next read command cannot be issued. For example, as shown in FIG. 2B, the read command 1 (RC1) is issued after the transfer of the read data 0 (RD0) is completed according to the read command 0 (RC0). Then, after the transfer of the read data 1 (RD1) is completed according to RC1, a read command (RC2) is issued. Then, the transfer of the read data 2 (RD2) is completed according to RC2.

このように、インターロック型のメモリリードアクセスでは、メモリリードアクセスのレイテンシTが大きい場合、メモリリードの帯域が落ちてしまう場合があり、スプリットトランザクション型のメモリリードアクセスに比べて、リードデータの転送効率が悪い。   As described above, in the memory read access of the interlock type, when the latency T of the memory read access is large, the memory read bandwidth may be reduced. Compared with the split transaction type memory read access, the read data transfer is performed. ineffective.

PCI(Peripheral Component Interconnect)−Express等の高速シリアルI/FやAXI(Advanced eXtensible Interface)、OCP(Open Core Protocol)等のASICの内部バスは、スプリットトランザクション型のメモリリードアクセスに対応しているが、レガシPCIはインターロック型のメモリリードアクセスに対応している。   PCI (Peripheral Component Interconnect)-ASIC internal buses such as high-speed serial I / F such as Express, AXI (Advanced Extensible Interface), OCP (Open Core Protocol) are compatible with split transaction type memory read access. Legacy PCI supports interlock type memory read access.

なお、図1に示した画像処理装置1においては、内部バス108及びシリアルバス接続151、152、153、155、156がスプリットトランザクション型のメモリリードアクセスに対応し、パラレルバス接続154がスプリットトランザクション型に非対応のインターロック型メモリリードアクセス対応である。   In the image processing apparatus 1 shown in FIG. 1, the internal bus 108 and the serial bus connections 151, 152, 153, 155, and 156 correspond to split transaction type memory read access, and the parallel bus connection 154 is a split transaction type. Is compatible with interlock type memory read access.

図1に示した画像処理装置1の構成においては、コントローラASIC100がシリアルバス接続に対応している。ここで、図1に示した画像処理装置1のようにコントローラASIC100がシリアルバス接続に対応している場合と、パラレルバス接続に対応している場合との違いを説明する。   In the configuration of the image processing apparatus 1 shown in FIG. 1, the controller ASIC 100 supports serial bus connection. Here, the difference between the case where the controller ASIC 100 supports serial bus connection and the case where the controller ASIC 100 supports parallel bus connection as in the image processing apparatus 1 shown in FIG. 1 will be described.

図3は、メインメモリ20とオプションA及びオプションBとを接続する経路を例示する図である。図3(a)は、コントローラASIC100がパラレルバス接続に対応している場合の接続経路を例示する図であり、図3(b)は、コントローラASIC100がシリアルバス接続に対応している場合の接続経路を例示する図である。   FIG. 3 is a diagram illustrating a path connecting the main memory 20 with the option A and the option B. FIG. 3A is a diagram illustrating a connection path when the controller ASIC 100 is compatible with parallel bus connection, and FIG. 3B is a connection when the controller ASIC 100 is compatible with serial bus connection. It is a figure which illustrates a route.

図3(a)に示すように、コントローラASIC100がパラレルバス接続に対応している場合、1つのパラレルバス上に複数のオプションデバイスを接続することができる。そのため、例えば、オプションAは、メインメモリ20から、SoC10、コントローラASIC100を介してデータを読み出すことができる。   As shown in FIG. 3A, when the controller ASIC 100 supports parallel bus connection, a plurality of option devices can be connected on one parallel bus. Therefore, for example, option A can read data from main memory 20 via SoC 10 and controller ASIC 100.

しかしながら、近年は、バスの高速化やピン数を削減するためにLSI(Legal Scale Integration)の外部I/Fとしてシリアルバスが主流となっている。コントローラASIC100がシリアルバス接続(高速シリアルI/F)に対応している場合、接続はポイントツーポイントである。そのため、複数のオプションデバイスを接続するためには、複数のシリアルバスI/Fを設けるか、スイッチ30を使用して1つのシリアルバスI/Fを分岐させる必要がある。   However, in recent years, serial buses have become mainstream as external I / Fs for LSI (Legual Scale Integration) in order to increase the speed of the bus and reduce the number of pins. When the controller ASIC 100 supports serial bus connection (high-speed serial I / F), the connection is point-to-point. Therefore, in order to connect a plurality of optional devices, it is necessary to provide a plurality of serial bus I / Fs or branch one serial bus I / F using the switch 30.

オプションデバイスは、必要に応じて画像処理装置1のメインチップにバスを介して接続されるので、接続される数が変動する場合も多い。そのため、コントローラASIC100にオプションデバイスの数に応じて複数のシリアルバスI/Fを設けるよりは、スイッチ30が使用されることが多い。また、パラレルバス接続に対応するオプションデバイスは、ブリッジ40を介してスイッチ30に接続される。   Since the optional devices are connected to the main chip of the image processing apparatus 1 via a bus as required, the number of connected devices often varies. Therefore, the switch 30 is often used rather than providing the controller ASIC 100 with a plurality of serial bus I / Fs according to the number of option devices. An option device corresponding to the parallel bus connection is connected to the switch 30 via the bridge 40.

このような場合、例えば、オプションAは、図3(b)に示すようにメインメモリ20から、SoC10、コントローラASIC100、スイッチ30及びブリッジ40を介してデータを読み出すことができる。このように、コントローラASIC100がシリアルバス接続に対応する場合、パラレルバス接続に対応する場合に比べて、メインメモリ20からオプションAまでの経路が長くなり、レイテンシが大きくなる。   In such a case, for example, the option A can read data from the main memory 20 via the SoC 10, the controller ASIC 100, the switch 30, and the bridge 40 as shown in FIG. As described above, when the controller ASIC 100 supports serial bus connection, the path from the main memory 20 to the option A becomes longer and the latency becomes larger than when the controller ASIC 100 supports parallel bus connection.

オプションデバイスは、過去に開発されたものをそのまま使用することも多いので、上述したレガシPCI等のインターロック型のパラレルバスI/Fを有する場合も多い。インターロック型のパラレルバスI/Fを有するオプションデバイスを画像処理装置1のメインチップに接続する場合、図3(b)に示した接続経路となるため、レイテンシが大きくなり、メモリリードのパフォーマンスが悪い。   Since option devices that have been developed in the past are often used as they are, it is often the case that they have an interlocked parallel bus I / F such as the above-mentioned legacy PCI. When an optional device having an interlock type parallel bus I / F is connected to the main chip of the image processing apparatus 1, the connection path shown in FIG. 3B is used, so that the latency is increased and the performance of the memory read is increased. bad.

これが本実施形態において解決するべき根本的な課題である。このような課題を解決するために、図1に示したリードDMAC105及び出力データバッファ107と同様のリードDMAC及びバッファを、コントローラASIC100に接続されているインターロック型のパラレルバスI/Fを有するオプションデバイスの数分設けることが考えられる。   This is a fundamental problem to be solved in the present embodiment. In order to solve such a problem, an option having an interlock type parallel bus I / F in which a read DMAC and a buffer similar to the read DMAC 105 and the output data buffer 107 shown in FIG. It is conceivable to provide as many devices as there are devices.

これにより、メインメモリ20に記憶されている画像データが一旦バッファに記憶され、オプションデバイスはバッファに記憶された画像データを読み出せばよいので、レイテンシを小さくできると考えられる。しかしながら、このようなオプションデバイスが接続される数は変動し、接続されている数の分リードDMAC及び出力データバッファを設けなければならないので、コントローラASIC100の回路規模が増加する。   As a result, the image data stored in the main memory 20 is temporarily stored in the buffer, and the option device only has to read out the image data stored in the buffer. Therefore, it is considered that the latency can be reduced. However, the number of such optional devices connected varies, and the number of connected read DMACs and output data buffers must be provided. Therefore, the circuit scale of the controller ASIC 100 increases.

本実施形態に係る要旨は、インターロック型のパラレルバスI/Fを有するオプションデバイスが接続される画像処理装置1において、回路規模の増加を抑えつつ、このようなオプションデバイスによるメモリリードのレイテンシを削減することにある。   The gist of the present embodiment is that, in the image processing apparatus 1 to which an option device having an interlock type parallel bus I / F is connected, the latency of memory read by such an option device is suppressed while suppressing an increase in circuit scale. It is to reduce.

ここで、本実施形態に係る画像処理装置1における動作の比較例として、図1に示した画像処理装置1における従来の動作を図4〜図7を参照して説明する。図4は、画像処理装置1において、オプションA、オプションB及びエンジンASIC140それぞれのリードDMACがメインメモリ20に記憶されている画像データを読み出す場合のパスを例示する図である。   Here, as a comparative example of the operation in the image processing apparatus 1 according to the present embodiment, the conventional operation in the image processing apparatus 1 shown in FIG. 1 will be described with reference to FIGS. FIG. 4 is a diagram illustrating a path when the read DMACs of the option A, the option B, and the engine ASIC 140 read image data stored in the main memory 20 in the image processing apparatus 1.

なお、本実施形態においては、オプションAがインターロック型のパラレルバスI/Fを有するデバイスであり、オプションB及びエンジンASIC140がストリップトランザクション型のシリアルI/Fを有するデバイスである。   In this embodiment, the option A is a device having an interlock type parallel bus I / F, and the option B and the engine ASIC 140 are devices having a strip transaction type serial I / F.

図4において太い点線矢印で示すように、オプションAのリードDMAC123がメインメモリ20に記憶されている画像データを読み出す場合のパスは、メインメモリ20から順にSoC10、シリアル通信部101、シリアル通信部102、スイッチ30、ブリッジ40、パラレル通信部121、リードDMAC123を通る。   As indicated by a thick dotted arrow in FIG. 4, the path when the option A read DMAC 123 reads the image data stored in the main memory 20 is the SoC 10, the serial communication unit 101, and the serial communication unit 102 in order from the main memory 20. , Switch 30, bridge 40, parallel communication unit 121, and lead DMAC 123.

上述したように、インターロック型のパラレルバスI/Fを有するオプションAは、複数のリードコマンドを先行して発行することができずレイテンシが大きくなる。その上、オプションAがメインメモリ20に記憶されている画像データを読み出すためには、スイッチ30及びブリッジ40を介する必要があり、メインメモリ20までの距離がオプションBやエンジンASIC140よりも遠くなるので、さらにレイテンシが大きくなる。   As described above, the option A having the interlock type parallel bus I / F cannot issue a plurality of read commands in advance and increases the latency. In addition, in order for option A to read the image data stored in the main memory 20, it is necessary to go through the switch 30 and the bridge 40, and the distance to the main memory 20 is farther than that of the option B or the engine ASIC 140. Further, the latency is increased.

また、図4において太い実線矢印で示すように、オプションBの図示しないリードDMACがメインメモリ20に記憶されている画像データを読み出す場合のパスは、メインメモリ20から順にSoC10、シリアル通信部101、シリアル通信部102、スイッチ30、オプションBの図示しないシリアル通信部、リードDMACを通る。   Further, as shown by a thick solid line arrow in FIG. 4, the path when the read DMAC (not shown) of option B reads image data stored in the main memory 20 is the SoC 10, serial communication unit 101, It passes through the serial communication unit 102, the switch 30, the serial communication unit (not shown) of option B, and the read DMAC.

スプリットトランザクション型のシリアルバスI/Fを有するオプションBは、複数のリードコマンドを先行して発行することができるので、オプションAの場合よりもレイテンシは小さくなる。また、オプションBがメインメモリ20に記憶されている画像データを読み出す場合は、ブリッジ40を介する必要がないので、オプションAの場合よりもメインメモリ20までの距離が近くレイテンシも小さい。   Since option B having a split transaction serial bus I / F can issue a plurality of read commands in advance, the latency is smaller than that of option A. Further, when the image data stored in the main memory 20 is read by the option B, the distance to the main memory 20 is closer and the latency is smaller than in the case of the option A because there is no need to go through the bridge 40.

また、図4において太い一点鎖線の矢印で示すように、エンジンASIC140のリードDMAC143がメインメモリ20に記憶されている画像データを読み出す場合のパスは2段階に分けられる。まず第1段階目では、コントローラASIC100のリードDMAC105がメインメモリ20に記憶されている画像データを読み出して出力データバッファ107に出力する。第2段階目では、エンジンASIC140のリードDMAC143が出力データバッファ107に出力された画像データを、シリアル通信部103及びシリアル通信部141を介して読み出す。   Further, as shown by a thick dashed line arrow in FIG. 4, the path when the read DMAC 143 of the engine ASIC 140 reads the image data stored in the main memory 20 is divided into two stages. First, in the first stage, the read DMAC 105 of the controller ASIC 100 reads the image data stored in the main memory 20 and outputs it to the output data buffer 107. In the second stage, the read DMAC 143 of the engine ASIC 140 reads the image data output to the output data buffer 107 via the serial communication unit 103 and the serial communication unit 141.

このような2段階のパスの場合、エンジンASIC140のリードDMAC143は、メインメモリ20に直接アクセスしないので、直接アクセスする場合よりもレイテンシを小さくすることができる。エンジンASIC140は、プリント処理やスキャナ処理等を行うので画像データのライン等時性を確保する必要があり、特にレイテンシを抑える必要があるので、エンジンASIC140のリードDMAC143によるメモリリードは、このような構成になっている。   In such a two-stage pass, the read DMAC 143 of the engine ASIC 140 does not directly access the main memory 20, so that the latency can be made smaller than that in the case of direct access. Since the engine ASIC 140 performs print processing, scanner processing, and the like, it is necessary to ensure the isochronism of the line of image data, and in particular, it is necessary to suppress latency. Therefore, the memory read by the read DMAC 143 of the engine ASIC 140 has such a configuration. It has become.

図5は、本実施形態に係る画像処理装置1における動作の比較例として、オプションAがメインメモリ20に記憶されている画像データを読み出す場合の従来の動作例を示すシーケンス図である。なお、図5に示した各部の間の実線矢印はソフトウェアによる動作を示し、点線矢印はハードウェアによる動作を示す。図5に示すように、SoC10は、オプションAのDMACレジスタ122に対してレジスタの設定(制御情報の設定)を行う(S501)。   FIG. 5 is a sequence diagram showing a conventional operation example when option A reads image data stored in the main memory 20 as a comparative example of the operation in the image processing apparatus 1 according to the present embodiment. In addition, the solid line arrow between each part shown in FIG. 5 shows the operation | movement by software, and a dotted line arrow shows the operation | movement by hardware. As shown in FIG. 5, the SoC 10 performs register setting (control information setting) for the option A DMAC register 122 (S501).

レジスタの設定を行ったSoC10は、オプションAのリードDMAC123を起動させる(S502)。SoC10の制御により起動したリードDMAC123は、DMACレジスタ122に設定されている制御情報に従い、メインメモリ20にアクセスして画像データを読み出す(S503)。画像データの読み出しが完了したリードDMAC123は、SoC10に対してデータの転送完了を通知して処理を終了する(S504)。   The SoC 10 that has set the register activates the option A read DMAC 123 (S502). The read DMAC 123 activated by the control of the SoC 10 accesses the main memory 20 and reads the image data in accordance with the control information set in the DMAC register 122 (S503). The read DMAC 123 that has finished reading the image data notifies the SoC 10 of the completion of the data transfer and ends the processing (S504).

なお、オプションBがメインメモリ20に記憶されている画像データを読み出す場合の動作例も図5に示した動作例と同様である。   Note that the operation example when the option B reads image data stored in the main memory 20 is the same as the operation example shown in FIG.

図6は、本実施形態に係る画像処理装置1においてエンジンASIC140がメインメモリ20に記憶されている画像データを読み出す場合の動作例を示すシーケンス図である。なお、図6に示した各部の間の実線矢印はソフトウェアによる動作を示し、点線矢印はハードウェアによる動作を示す。図6に示すように、SoC10は、コントローラASIC100のDMACレジスタ104に対してレジスタの設定を行う(S601)。   FIG. 6 is a sequence diagram illustrating an operation example when the engine ASIC 140 reads image data stored in the main memory 20 in the image processing apparatus 1 according to the present embodiment. In addition, the solid line arrow between each part shown in FIG. 6 shows the operation | movement by software, and the dotted line arrow shows the operation | movement by hardware. As shown in FIG. 6, the SoC 10 sets a register in the DMAC register 104 of the controller ASIC 100 (S601).

また、エンジンCPU50は、エンジンASIC140のDMACレジスタ142に対してレジスタの設定を行う(S602)。DMACレジスタ104及びDMACレジスタ142に対してレジスタの設定を行ったSoC10は、コントローラASIC100のリードDMAC105を起動させる(S603)。   Further, the engine CPU 50 sets a register in the DMAC register 142 of the engine ASIC 140 (S602). The SoC 10 that has set the registers in the DMAC register 104 and the DMAC register 142 activates the read DMAC 105 of the controller ASIC 100 (S603).

SoC10の制御により起動したリードDMAC105は、DMACレジスタ104に設定されている制御情報に従い、メインメモリ20にアクセスして画像データを読み出す(S604)。そして、リードDMAC105は、メインメモリ20から読み出した画像データを出力データバッファ107に対して出力する(S605)。   The read DMAC 105 activated under the control of the SoC 10 accesses the main memory 20 and reads out image data according to the control information set in the DMAC register 104 (S604). Then, the read DMAC 105 outputs the image data read from the main memory 20 to the output data buffer 107 (S605).

エンジンCPU50は、エンジンASIC140のリードDMAC143を起動させる(S606)。エンジンCPU50の制御により起動したリードDMAC143は、DMACレジスタ142に設定されている制御情報に従い、出力データバッファ107にアクセスして画像データを読み出す(S607)。   The engine CPU 50 activates the read DMAC 143 of the engine ASIC 140 (S606). The read DMAC 143 activated under the control of the engine CPU 50 accesses the output data buffer 107 and reads the image data in accordance with the control information set in the DMAC register 142 (S607).

図7は、DMACレジスタ142に設定されているリードアクセスのアドレスの位置を例示する図である。図7において斜線のハッチングで示すように、DMACレジスタ142に設定されているリードアクセスのアドレスは固定である。シリアル通信部103は、リードDMAC143からのリードアクセスを監視し、アドレスが出力データバッファ107にアクセスするためのアドレスである場合、メインメモリ20ではなく出力データバッファ107にアクセスしてリードDMAC143に対してデータを転送する。このような構成により、リードDMAC143から出力データバッファ107へのアクセスが実現される。   FIG. 7 is a diagram exemplifying the position of the read access address set in the DMAC register 142. As indicated by hatching in FIG. 7, the read access address set in the DMAC register 142 is fixed. The serial communication unit 103 monitors the read access from the read DMAC 143. When the address is an address for accessing the output data buffer 107, the serial communication unit 103 accesses the output data buffer 107 instead of the main memory 20 to the read DMAC 143. Transfer data. With such a configuration, access from the read DMAC 143 to the output data buffer 107 is realized.

リードDMAC105は、メインメモリ20からの画像データの読み出しと出力データバッファ107への画像データの出力とが完了すると、SoC10に対して転送完了を通知する(S608)。なお、S608の処理はS607の処理の後に限定されるわけではなく、S607の処理前や処理中に実行されてもよい。また、リードDMAC143は、出力データバッファからの画像データの読み出しが完了すると、SoC10に対して転送完了を通知して処理を終了する(S609)。   When the reading of the image data from the main memory 20 and the output of the image data to the output data buffer 107 are completed, the read DMAC 105 notifies the transfer completion to the SoC 10 (S608). Note that the process of S608 is not limited to the process after S607, and may be executed before or during the process of S607. Further, when reading of the image data from the output data buffer is completed, the read DMAC 143 notifies the SoC 10 of the transfer completion and ends the processing (S609).

コントローラASIC100にオプションA用のリードDMAC及び出力データバッファを設けて、図6に示したエンジンASIC140のリードDMAC143による画像データの読み出し処理と同様な処理を行うことにより、オプションAのリードDMAC123が画像データを読み出す場合もメモリリードのレイテンシを小さくできると考えられる。しかしながら、必要に応じて使用されるオプション機能であり接続数も定まらないオプションデバイス用に個々にリードDMAC及び出力データバッファを増設することは回路規模の増大にもつながり好ましくない。以下、回路規模の増大を抑えつつメモリリードのレイテンシを削減することを目的とした本発明の実施形態に係る画像処理装置1について説明する。   An option A read DMAC and an output data buffer are provided in the controller ASIC 100, and the same processing as the image data read processing by the read DMAC 143 of the engine ASIC 140 shown in FIG. It is considered that the latency of the memory read can be reduced also when reading out. However, it is not preferable to add a read DMAC and an output data buffer individually for an optional device that is an optional function that is used as necessary and the number of connections is not determined, resulting in an increase in circuit scale. Hereinafter, an image processing apparatus 1 according to an embodiment of the present invention for the purpose of reducing memory read latency while suppressing an increase in circuit scale will be described.

図8は、本実施形態に係る画像処理装置1の構成を例示するブロック図である。図8に示すように、本実施形態に係る画像処理装置1は、図1に示した構成にレジスタ制御部109、DMACレジスタ110、アクセス元特定部111、アクセス制御部112、セレクタ113(以降、「SEL1」とする)及びセレクタ114(以降、「SEL2」とする)が追加された構成をとる。   FIG. 8 is a block diagram illustrating the configuration of the image processing apparatus 1 according to this embodiment. As shown in FIG. 8, the image processing apparatus 1 according to the present embodiment has the configuration shown in FIG. 1, the register control unit 109, the DMAC register 110, the access source identification unit 111, the access control unit 112, and the selector 113 (hereinafter, “SEL1”) and a selector 114 (hereinafter referred to as “SEL2”) are added.

レジスタ制御部109は、SoC10からシリアル通信部101を介して行われるレジスタ設定に応じて、SoC10からのレジスタ設定をDMAC110にも行う。すなわち、レジスタ制御部109は、制御情報記憶媒体であるDMACレジスタ110に制御情報を記憶させる記憶媒体制御部として機能する。以下、レジスタ制御部109の処理の具体例を図9及び図10を参照して説明する。   The register control unit 109 performs the register setting from the SoC 10 to the DMAC 110 in accordance with the register setting performed from the SoC 10 via the serial communication unit 101. That is, the register control unit 109 functions as a storage medium control unit that stores control information in the DMAC register 110 that is a control information storage medium. A specific example of the processing of the register control unit 109 will be described below with reference to FIGS.

図9は、オプションデバイスに関する情報を例示するテーブルである。図9に示すように、テーブルは、例えば、“オプションデバイス名”、オプションデバイスのDMACレジスタのアドレスを示す“レジスタアドレス”及びオプションデバイスのバス種別を示す“バス種別”から構成される。レジスタ制御部109は、図9に示したテーブルを参照できるものとする。   FIG. 9 is a table illustrating information on optional devices. As shown in FIG. 9, the table includes, for example, “option device name”, “register address” indicating the address of the DMAC register of the option device, and “bus type” indicating the bus type of the option device. The register control unit 109 can refer to the table shown in FIG.

図10は、レジスタ制御部109によるレジスタ制御を例示するフローチャートである。図10に示すように、レジスタ制御部109は、SoC10からシリアル通信部101を介して行われるレジスタ設定を監視して、レジスタ設定において指定されているレジスタのアドレスを取得する(S1001)。   FIG. 10 is a flowchart illustrating register control by the register control unit 109. As shown in FIG. 10, the register control unit 109 monitors the register setting performed from the SoC 10 via the serial communication unit 101, and acquires the address of the register specified in the register setting (S1001).

レジスタのアドレスを取得したレジスタ制御部109は、図9に示したテーブルを参照して、取得したレジスタのアドレスと一致する“レジスタアドレス”に関連付けられたオプションデバイスの“バス種別”を取得する(S1002)。“バス種別”を取得したレジスタ制御部109は、取得した“バス種別”が“インターロック型のパラレルバスI/F”であるか否かを判定する(S1003)。   The register control unit 109 that has acquired the register address refers to the table illustrated in FIG. 9 and acquires the “bus type” of the option device associated with the “register address” that matches the acquired register address ( S1002). The register control unit 109 that has acquired “bus type” determines whether or not the acquired “bus type” is “interlock type parallel bus I / F” (S1003).

“インターロック型のパラレルI/F”であると判定した場合(S1003/YES)、レジスタ制御部109は、SoC10からのレジスタ設定をDMACレジスタ110にも設定する(S1004)。一方、“インターロック型のパラレルI/F”ではないと判定した場合(S1003/NO)、レジスタ制御部109は、DMACレジスタ110にレジスタ設定を行うことなく処理を終了する。   When it is determined that it is “interlock type parallel I / F” (S1003 / YES), the register control unit 109 sets the register setting from the SoC 10 also in the DMAC register 110 (S1004). On the other hand, when it is determined that it is not “interlock type parallel I / F” (S1003 / NO), the register control unit 109 ends the process without setting the register in the DMAC register 110.

例えば、本実施形態において、レジスタ制御部109は、SoC10からのレジスタ設定において指定されたレジスタアドレスがオプションAのDMACレジスタ122のアドレスである場合、オプションAのバス種別はインターロック型のパラレルバスI/Fなので、DMACレジスタ122のレジスタ設定をDMACレジスタ110にも設定する。   For example, in this embodiment, when the register address specified in the register setting from the SoC 10 is the address of the DMAC register 122 of the option A, the register control unit 109 uses the interlock type parallel bus I as the bus type of the option A. Therefore, the register setting of the DMAC register 122 is also set in the DMAC register 110.

DMACレジスタ110は、リードDMAC105を制御するための制御情報を格納する記憶媒体(制御情報記憶媒体)であり、上述したようにレジスタ制御部109によりレジスタ設定される。リードDMAC105は、後述するSEL1のレジスタ切替に応じてDMACレジスタ110に記憶されている制御情報に従ってメインメモリ20に記憶されている画像データを読み出す。   The DMAC register 110 is a storage medium (control information storage medium) that stores control information for controlling the read DMAC 105, and is set by the register control unit 109 as described above. The read DMAC 105 reads image data stored in the main memory 20 in accordance with control information stored in the DMAC register 110 in response to register switching of SEL1 described later.

アクセス元特定部111は、リードコマンドを発行したオプションデバイス、すなわちシリアル通信部102にアクセスしたアクセス元のオプションデバイスを特定する。以下、アクセス元特定部111の処理の具体例を、図11を参照して説明する。なお、ここでは、シリアル通信部101、102、103、141としてPCI−Expressが用いられ、パラレル通信部121としてPCIが用いられるとする。   The access source specifying unit 111 specifies an option device that has issued a read command, that is, an access source option device that has accessed the serial communication unit 102. Hereinafter, a specific example of the process of the access source identifying unit 111 will be described with reference to FIG. Here, it is assumed that PCI-Express is used as the serial communication units 101, 102, 103, and 141, and PCI is used as the parallel communication unit 121.

図11は、PCI−ExpressのTLP(Transaction Layer Packet)のメモリリードコマンドのヘッダ構造を例示する図である。図11に示すように、TLPヘッダには、“Bus Number”及び“Device Number”が含まれる。“Bus Number”及び“Device Number”は、PCI−ExpressやPCIのシステムにおいてコンフィギュレーション時に各バス及びバスに接続されているデバイスに割り振られる情報である。アクセス元特定部111は、シリアル通信部102を介して取得したTLPヘッダに含まれる“Bus Number”及び“Device Number”を取得して、アクセス元のオプションデバイスを特定する。   FIG. 11 is a diagram illustrating a header structure of a memory read command of a PCI-Express TLP (Transaction Layer Packet). As shown in FIG. 11, the TLP header includes “Bus Number” and “Device Number”. “Bus Number” and “Device Number” are information allocated to each bus and a device connected to the bus at the time of configuration in a PCI-Express or PCI system. The access source specifying unit 111 acquires “Bus Number” and “Device Number” included in the TLP header acquired via the serial communication unit 102, and specifies an access source option device.

アクセス制御部112は、アクセス元特定部111により特定されたオプションデバイス及びリードDMAC105の動作状況に応じてSEL1及びSEL2を制御して、リードコマンドを発行したオプションデバイスの画像データの取得先を制御する。SEL1は、リードDMAC105と接続するレジスタを、DMACレジスタ104及びDMACレジスタ110のいずれかに切り替える。SEL2は、シリアル通信部102との接続先を、メインメモリ20及び出力データバッファ107のいずれかに切り替える。すなわち、SEL2は、オプションデバイスによる画像データの取得先を、シリアル通信部101を介したメインメモリ20及び出力データバッファ107のいずれかに切り替える。   The access control unit 112 controls the SEL1 and SEL2 according to the operation status of the option device and the read DMAC 105 specified by the access source specifying unit 111, and controls the acquisition destination of the image data of the option device that issued the read command. . SEL1 switches the register connected to the read DMAC 105 to either the DMAC register 104 or the DMAC register 110. The SEL 2 switches the connection destination with the serial communication unit 102 to either the main memory 20 or the output data buffer 107. That is, the SEL 2 switches the image data acquisition destination by the option device to either the main memory 20 or the output data buffer 107 via the serial communication unit 101.

以下、アクセス制御部112の処理の具体例を、図12を参照して説明する。図12は、アクセス制御部112の処理を例示するフローチャートである。なお、本実施形態においては、初期設定としては、SEL1がリードDMAC105とDMACレジスタ104とを接続するように制御されており、SEL2が画像データの取得先をメインメモリ20とするように制御されている。   Hereinafter, a specific example of processing of the access control unit 112 will be described with reference to FIG. FIG. 12 is a flowchart illustrating the processing of the access control unit 112. In the present embodiment, as an initial setting, SEL1 is controlled to connect the read DMAC 105 and the DMAC register 104, and SEL2 is controlled to use the main memory 20 as the image data acquisition destination. Yes.

図12に示すように、アクセス制御部112は、アクセス元特定部111により特定されたオプションデバイス(対象画像処理部)のバス種別がインターロック型のパラレルバスI/Fであるか否かを判定する(S1201)。オプションデバイスのバス種別は、例えば、図9に示したテーブルから、アクセス元特定部111により特定されたオプションデバイスに関連付けられた“バス種別”である。   As shown in FIG. 12, the access control unit 112 determines whether the bus type of the option device (target image processing unit) specified by the access source specifying unit 111 is an interlocked parallel bus I / F. (S1201). The bus type of the option device is, for example, “bus type” associated with the option device specified by the access source specifying unit 111 from the table shown in FIG.

バス種別がインターロック型のパラレルバスI/F以外(本実施形態においてはオプションBのバス)である場合(S1201/NO)、アクセス制御部112は、初期設定のまま処理を終了する。すなわち、この場合、本実施形態においては、リードコマンドを発行したオプションデバイスがインターロック型のパラレルバスI/FではないオプションBであるので、SEL1及びSEL2が初期設定のままでオプションBの画像データの取得先がメインメモリ20となる。   When the bus type is other than the interlock type parallel bus I / F (the bus of option B in the present embodiment) (S1201 / NO), the access control unit 112 ends the process with the initial setting. In this case, in this embodiment, since the option device that issued the read command is option B that is not an interlock type parallel bus I / F, the image data of option B is left with the initial settings of SEL1 and SEL2. Is obtained from the main memory 20.

一方、バス種別がインターロック型のパラレルバスI/F(本実施形態においてはオプションAのバス)である場合(S1201/YES)、アクセス制御部112は、リードDMAC105がエンジンASIC140用に動作中であるか否かを判定する(S1202)。具体的には、アクセス制御部112は、エンジンASIC140のリードDMAC143がメインメモリ20に記憶されている画像データを取得するために、リードDMAC105がメインメモリ20に記憶されている画像データを読み出して出力データバッファ107に予め出力している状態であるか否かを判定する。   On the other hand, when the bus type is an interlock type parallel bus I / F (the bus of option A in this embodiment) (S1201 / YES), the access control unit 112 indicates that the read DMAC 105 is operating for the engine ASIC 140. It is determined whether or not there is (S1202). Specifically, in order for the read DMAC 143 of the engine ASIC 140 to acquire the image data stored in the main memory 20, the access control unit 112 reads out and outputs the image data stored in the main memory 20. It is determined whether or not the data buffer 107 has been output in advance.

すなわち、S1202の処理は、エンジンASIC140が出力データバッファ107からデータを取得している状態か否かを判定することを意味し、リードDMAC105の動作状況は複数の画像処理部のうちの1つであるエンジンASIC140の動作状況ともいえる。アクセス制御部112は、例えば、SoC10による動作制御状態を監視することにより、リードDMAC105がエンジンASIC140用に動作中であるかを判定することができる。   That is, the process of S1202 means determining whether or not the engine ASIC 140 is acquiring data from the output data buffer 107, and the operation status of the read DMAC 105 is one of a plurality of image processing units. It can also be said that an engine ASIC 140 is operating. For example, the access control unit 112 can determine whether the read DMAC 105 is operating for the engine ASIC 140 by monitoring an operation control state by the SoC 10.

動作中であると判定した場合(S1202/YES)、アクセス制御部112は、シリアル通信部102とメインメモリ20とが接続されるようにSEL2を制御する(S1203)。   If it is determined that it is operating (S1202 / YES), the access control unit 112 controls SEL2 so that the serial communication unit 102 and the main memory 20 are connected (S1203).

エンジンASIC140は、プリント処理やスキャナ処理等を行うので画像データのライン等時性を確保する必要があり、特にレイテンシを抑える必要がある。そのため、出力データバッファ107から画像データを取得する優先順位は、エンジンASIC140のほうがライン及びページの等時性を確保する必要のないオプションデバイスよりも高い。すなわち、優先順位は、エンジンASIC140やオプションデバイスで行われる処理の種類に応じて設定される。そして、DMACレジスタ104及びDMACレジスタ110には、優先順位の異なる画像処理部それぞれがメインメモリ20から画像データを取得するための制御情報がそれぞれ記憶されていることになる。   Since the engine ASIC 140 performs print processing, scanner processing, and the like, it is necessary to ensure timeliness such as lines of image data, and in particular, it is necessary to suppress latency. For this reason, the priority for acquiring image data from the output data buffer 107 is higher in the engine ASIC 140 than in the option device that does not need to ensure isochronism of lines and pages. That is, the priority order is set according to the type of processing performed by the engine ASIC 140 or the optional device. The DMAC register 104 and the DMAC register 110 store control information for the image processing units having different priorities to acquire image data from the main memory 20, respectively.

上述の処理により、リードDMAC105がエンジンASIC140用に動作中である場合は、リードDMAC143が出力データバッファ107に記憶されている画像データを読み出し、オプションAのリードDMAC123がメインメモリ20に記憶されている画像データを読み出すことになる。   When the read DMAC 105 is operating for the engine ASIC 140 by the above processing, the read DMAC 143 reads the image data stored in the output data buffer 107, and the option A read DMAC 123 is stored in the main memory 20. Image data is read out.

SEL1及びSEL2を制御したアクセス制御部112は、S1202の処理に戻り、リードDMAC105の動作状況を監視する。   The access control unit 112 that has controlled SEL1 and SEL2 returns to the process of S1202 and monitors the operation status of the read DMAC 105.

一方、動作中ではないと判定した場合(S1202/NO)、アクセス制御部112は、リードDMAC105とDMACレジスタ110とが接続されるようにSEL1を制御する(S1204)。また、アクセス制御部112は、シリアル通信部102と出力データバッファ107とが接続されるようにSEL2を制御する(S1205)。   On the other hand, if it is determined that it is not operating (S1202 / NO), the access control unit 112 controls SEL1 so that the read DMAC 105 and the DMAC register 110 are connected (S1204). Further, the access control unit 112 controls SEL2 so that the serial communication unit 102 and the output data buffer 107 are connected (S1205).

リードDMAC105がエンジンASIC140用に動作していない場合は、出力データバッファ107を使用することができる。そこで、上述の処理により、リードコマンドを発行したオプションAのDMACレジスタ122と同じレジスタ設定であるDMACレジスタ110に記憶されている制御情報に従って、リードDMAC105がメインメモリ20から画像データを読み込み出力データバッファ107に出力する。そして、オプションAのリードDMAC123は、出力データバッファ107から画像データを読み出すことができるので、メモリリードのレイテンシが従来よりも削減される。   When the read DMAC 105 is not operating for the engine ASIC 140, the output data buffer 107 can be used. Therefore, the read DMAC 105 reads the image data from the main memory 20 according to the control information stored in the DMAC register 110 having the same register setting as that of the option A DMAC register 122 that issued the read command by the above processing, and the output data buffer. It outputs to 107. Since the option A read DMAC 123 can read image data from the output data buffer 107, the latency of the memory read is reduced as compared with the conventional case.

SEL1及びSEL2を制御したアクセス制御部112は、オプションAからSoC10に対してデータの転送完了が通知されるまで(S1206/YES)、S1202の処理に戻り、リードDMAC105の動作状況を監視する。オプションAからSoC10に対してデータの転送完了が通知されると(S1206/YES)、アクセス制御部112は、SEL1及びSEL2を初期設定の状態に制御して処理を終了する(S1207)。   The access control unit 112 that controls SEL1 and SEL2 returns to the processing of S1202 and monitors the operation status of the read DMAC 105 until the data transfer completion is notified from the option A to the SoC 10 (S1206 / YES). When the completion of data transfer is notified from the option A to the SoC 10 (S1206 / YES), the access control unit 112 controls SEL1 and SEL2 to the initial setting state and ends the processing (S1207).

また、上述のように、アクセス制御部112は、SEL1及びSEL2の接続を制御した後も、リードDMAC105の動作状況を監視する。これにより、オプションAがリードコマンドを発行した当初は、リードDMAC105がエンジンASIC140用に動作中であっても、その動作が完了すると、途中でオプションAによる画像データの取得先を出力データバッファ107に切り替えることができる。   Further, as described above, the access control unit 112 monitors the operation status of the read DMAC 105 even after controlling the connection between the SEL1 and the SEL2. As a result, even when the read DMAC 105 is operating for the engine ASIC 140 when the option A issues a read command, when the operation is completed, the acquisition destination of the image data by the option A is stored in the output data buffer 107 halfway. Can be switched.

この場合、アクセス元特定部111は、オプションAのリードDMAC123がメインメモリ20からどのアドレスまで画像データを読み出したかを記録しておく。リードDMAC105のエンジンASIC140の動作が完了すると、アクセス制御部112は、アクセス元特定部111により記録されているアドレスから読み出しが未完了である画像データの開始アドレスをDMACレジスタ110に設定する。   In this case, the access source identifying unit 111 records to what address the option A read DMAC 123 has read the image data from the main memory 20. When the operation of the engine ASIC 140 of the read DMAC 105 is completed, the access control unit 112 sets, in the DMAC register 110, the start address of image data that has not been read out from the address recorded by the access source specifying unit 111.

なお、図12においては示していないが、アクセス制御部112は、オプションAによる画像データの取得先を出力データバッファ107に切り替えていても、途中でエンジンASIC140がリードコマンドを発行すると、オプションAによる画像データの取得先をメインメモリ20に切り替えることもできる。このように、アクセス制御部112は、オプションA、オプションB及びエンジンASIC140等の複数の画像処理部の動作状況に応じて、複数の画像処理部のうち、DMAC110に記憶されている制御情報において示されている記憶領域から画像データを取得するべき画像処理部に出力データバッファ107から画像データを取得させるように切り替える切替制御部として機能する。   Although not shown in FIG. 12, even if the access control unit 112 switches the acquisition destination of the image data by the option A to the output data buffer 107, if the engine ASIC 140 issues a read command in the middle, the access control unit 112 The image data acquisition destination can be switched to the main memory 20. As described above, the access control unit 112 is indicated in the control information stored in the DMAC 110 among the plurality of image processing units according to the operation status of the plurality of image processing units such as the option A, the option B, and the engine ASIC 140. It functions as a switching control unit that switches the image processing unit that should acquire image data from the storage area to acquire the image data from the output data buffer 107.

図13は、本実施形態に係る画像処理装置1におけるオプションAのリードDMAC123がメインメモリ20に記憶されている画像データを読み出す場合のパスを例示する図である。なお、ここでは、リードDMAC105がエンジンASIC140用に動作中ではない場合のパスを説明する。   FIG. 13 is a diagram exemplifying a path when the option A read DMAC 123 reads image data stored in the main memory 20 in the image processing apparatus 1 according to the present embodiment. Here, a path when the read DMAC 105 is not operating for the engine ASIC 140 will be described.

図13において太い実線矢印で示すように、オプションAのリードDMAC123がメインメモリ20に記憶されている画像データを読み出す場合のパスは2段階に分けられる。まず第1段階目では、DMACレジスタ110に記憶されている制御情報に従って、コントローラASIC100のリードDMAC105がメインメモリ20に記憶されている画像データを読み出して出力データバッファ107に出力する。   As indicated by a thick solid arrow in FIG. 13, the path when the option A read DMAC 123 reads the image data stored in the main memory 20 is divided into two stages. First, in the first stage, according to the control information stored in the DMAC register 110, the read DMAC 105 of the controller ASIC 100 reads out the image data stored in the main memory 20 and outputs it to the output data buffer 107.

第2段階目では、オプションAのリードDMAC123が出力データバッファ107に出力された画像データを、SEL2、シリアル通信部102、スイッチ30、ブリッジ40及びパラレル通信部121を介して読み出す。なお、エンジンASIC140のリードDMAC143及びオプションBのリードDMACがメインメモリ20に記憶されている画像データを読み出す場合のパスは、図4を示して説明したパスと同様である。   In the second stage, the option A read DMAC 123 reads the image data output to the output data buffer 107 via the SEL 2, the serial communication unit 102, the switch 30, the bridge 40, and the parallel communication unit 121. The path when the read DMAC 143 of the engine ASIC 140 and the read DMAC of the option B read the image data stored in the main memory 20 is the same as the path described with reference to FIG.

図14は、本実施形態に係る画像処理装置1における動作例を示すシーケンス図である。ここでは、リードDMAC105がエンジンASIC140用に動作中ではない場合(エンジンASIC140により処理される画像データをメインメモリ20から読み出し中以外の場合)に、オプションAのリードDMAC123がメインメモリ20に記憶されている画像データを読み出す場合の動作例を説明する。なお、図14に示した各部の間の実線矢印はソフトウェアによる動作を示し、点線矢印はハードウェアによる動作を示す。   FIG. 14 is a sequence diagram illustrating an operation example in the image processing apparatus 1 according to the present embodiment. Here, when the read DMAC 105 is not operating for the engine ASIC 140 (when image data processed by the engine ASIC 140 is not being read from the main memory 20), the option A read DMAC 123 is stored in the main memory 20. An example of operation when reading out image data will be described. In addition, the solid line arrow between each part shown in FIG. 14 shows the operation | movement by software, and the dotted line arrow shows the operation | movement by hardware.

図14に示すように、SoC10は、オプションAのDMACレジスタ122に対してレジスタの設定を行う(S1401)。SoC10によりレジスタの設定が行われると、レジスタ制御部109によりDMACレジスタ122に設定されたレジスタの設定がコントローラASIC100のDMACレジスタ110にも反映される(S1402)。   As shown in FIG. 14, the SoC 10 sets a register for the option A DMAC register 122 (S1401). When the register setting is performed by the SoC 10, the register setting set in the DMAC register 122 by the register control unit 109 is also reflected in the DMAC register 110 of the controller ASIC 100 (S1402).

レジスタ設定を行ったSoC10は、コントローラASIC100のリードDMAC105を起動させる(S1403)。SoC10の制御により起動したリードDMAC105は、アクセス制御部112によりSEL1が切り替えられて接続されたDMACレジスタ110に設定されている制御情報に従い、メモリの開始アドレスから設定サイズ分のメインメモリ20にアクセスして画像データを読み出す(S1404)。そして、リードDMAC105は、メインメモリ20から読み出した画像データを出力データバッファ107に対して出力する(S1405)。   The SoC 10 that has set the register activates the read DMAC 105 of the controller ASIC 100 (S1403). The read DMAC 105 activated by the control of the SoC 10 accesses the main memory 20 for the set size from the start address of the memory according to the control information set in the DMAC register 110 connected by switching the SEL1 by the access control unit 112. The image data is read out (S1404). Then, the read DMAC 105 outputs the image data read from the main memory 20 to the output data buffer 107 (S1405).

また、オプションAのリードDMAC123は、DMACレジスタ122に設定されている制御情報に従い画像データを読み出す(S1406)。ただし、アクセス制御部112によりSEL2が切り替えられて画像データの取得先が出力データバッファ107になっている。そのため、リードDMAC123は、DMACレジスタ122に設定されている開始アドレスを無視して、出力データバッファ107に記憶されている画像データを読み出すことになる。   The option A read DMAC 123 reads the image data in accordance with the control information set in the DMAC register 122 (S1406). However, SEL2 is switched by the access control unit 112, and the output data buffer 107 is the acquisition destination of the image data. Therefore, the read DMAC 123 ignores the start address set in the DMAC register 122 and reads the image data stored in the output data buffer 107.

コントローラASIC100のリードDMAC105は、メインメモリ20からの画像データの読み出しと出力データバッファ107への画像データの出力とが完了すると、SoC10に対して転送完了を通知する(S1407)。なお、S1407の処理はS1406の処理の後に限定されるわけではなく、S1406の処理前や処理中に実行されてもよい。また、リードDMAC123は、出力データバッファからの画像データの読み出しが完了すると、SoC10に対して転送完了を通知して処理を終了する(S1408)。   When the read DMAC 105 of the controller ASIC 100 completes the reading of the image data from the main memory 20 and the output of the image data to the output data buffer 107, it notifies the SoC 10 of the transfer completion (S1407). Note that the process of S1407 is not limited to the process after S1406, and may be executed before or during the process of S1406. Further, when the reading of the image data from the output data buffer is completed, the read DMAC 123 notifies the SoC 10 of the transfer completion and ends the processing (S1408).

なお、本実施形態においては、リードDMAC105がSoC10に対して転送完了を通知する(S1407)場合を例として説明した。しかしながら、図5を示して説明したように、オプションAのリードDMAC123がメインメモリ20から直接画像データを読み出した場合、SoC10はリードDMAC105から転送完了通知を受けることはない。そのため、SoC10における制御を従来と同等とするために、DMACレジスタ110に記憶されている制御情報に従ってリードDMAC105が動作している場合は、SoC10に対して転送完了を通知しないような構成としてもよい。   In this embodiment, the case where the read DMAC 105 notifies the SoC 10 of transfer completion (S1407) has been described as an example. However, as described with reference to FIG. 5, when the option A read DMAC 123 reads image data directly from the main memory 20, the SoC 10 does not receive a transfer completion notification from the read DMAC 105. For this reason, in order to make the control in the SoC 10 equivalent to the conventional control, when the read DMAC 105 is operating according to the control information stored in the DMAC register 110, the transfer completion may not be notified to the SoC 10. .

図15は、本実施形態に係る画像処理装置1における動作例を示すシーケンス図である。ここでは、リードDMAC105がエンジンASIC140用に動作中である場合に、オプションAのリードDMAC123がメインメモリ20に記憶されている画像データを読み出す場合の動作例を説明する。なお、図15に示した各部の間の実線矢印はソフトウェアによる動作を示し、点線矢印はハードウェアによる動作を示す。   FIG. 15 is a sequence diagram illustrating an operation example in the image processing apparatus 1 according to the present embodiment. Here, an example of an operation when the read DMAC 123 of the option A reads image data stored in the main memory 20 when the read DMAC 105 is operating for the engine ASIC 140 will be described. Note that solid line arrows between the units illustrated in FIG. 15 indicate operations by software, and dotted arrows indicate operations by hardware.

また、エンジンASIC140のリードDMAC143がメインメモリ20に記憶されている画像データを読み出す動作は、図6に示した動作と同様であるので、図15においては途中までの動作の記載を省略し、図6に示したS607の処理を図15に示したS1501の処理として説明する。   Since the operation of reading the image data stored in the main memory 20 by the read DMAC 143 of the engine ASIC 140 is the same as the operation shown in FIG. 6, the description of the operation up to the middle is omitted in FIG. The process of S607 shown in FIG. 6 will be described as the process of S1501 shown in FIG.

図15に示すように、エンジンASIC140のリードDMAC143は、DMACレジスタ142に設定されている制御情報に従い、出力データバッファ107にアクセスして画像データを読み出す(S1501)。   As shown in FIG. 15, the read DMAC 143 of the engine ASIC 140 accesses the output data buffer 107 and reads the image data in accordance with the control information set in the DMAC register 142 (S1501).

SoC10は、オプションAのDMACレジスタ122に対してレジスタの設定を行う(S1502)。SoC10によりレジスタの設定が行われると、レジスタ制御部109によりDMACレジスタ122に設定されたレジスタの設定がコントローラASIC100のDMACレジスタ110にも反映される(S1503)。   The SoC 10 sets a register for the option A DMAC register 122 (S1502). When the register setting is performed by the SoC 10, the register setting set by the register control unit 109 in the DMAC register 122 is also reflected in the DMAC register 110 of the controller ASIC 100 (S1503).

レジスタ設定を行ったSoC10は、コントローラASIC100のリードDMAC123を起動させる(S1403)。アクセス制御部112によりSEL2が制御されてシリアル通信部102とメインメモリ20とが接続されているので、SoC10の制御により起動したリードDMAC123は、DMACレジスタ122に設定されている制御情報に従い、メインメモリ20にアクセスして画像データを読み出す(S1505)。   The SoC 10 that has set the register activates the read DMAC 123 of the controller ASIC 100 (S1403). Since the SEL2 is controlled by the access control unit 112 and the serial communication unit 102 and the main memory 20 are connected, the read DMAC 123 activated by the control of the SoC 10 follows the control information set in the DMAC register 122. 20 is accessed and image data is read out (S1505).

リードDMAC105は、リードDMAC123がメインメモリ20から画像データを読み出している間に、メインメモリ20からの画像データの読み出しと出力データバッファ107への画像データの出力とが完了すると、SoC10に対して転送完了を通知する(S1506)。また、リードDMAC143は、出力データバッファからの画像データの読み出しが完了すると、SoC10に対して転送完了を通知して処理を終了する(S1507)。   The read DMAC 105 transfers the image data to the SoC 10 when reading of the image data from the main memory 20 and output of the image data to the output data buffer 107 are completed while the read DMAC 123 is reading image data from the main memory 20. Completion is notified (S1506). Further, when the reading of the image data from the output data buffer is completed, the read DMAC 143 notifies the SoC 10 of the transfer completion and ends the processing (S1507).

転送完了を通知したリードDMAC105は、アクセス制御部112によりSEL1が切り替えられて接続されたDMACレジスタ110に設定されている制御情報に従い、読み出し未完了の画像データの開始アドレスからメインメモリ20にアクセスして画像データを読み出す(S1508)。そして、リードDMAC105は、メインメモリ20から読み出した画像データを出力データバッファ107に対して出力する(S1509)。   The read DMAC 105 that has notified the transfer completion accesses the main memory 20 from the start address of the image data that has not been read in accordance with the control information set in the DMAC register 110 connected by switching SEL1 by the access control unit 112. The image data is read out (S1508). Then, the read DMAC 105 outputs the image data read from the main memory 20 to the output data buffer 107 (S1509).

これ以降、図14に示したS1406〜S1408と同様な処理を行う(S1510〜S1512)。また、図15に示した動作においても、図14に示した動作と同様に、S1511の処理であるSoC10に対する転送完了の通知を行わないような構成としてもよい。   Thereafter, processing similar to S1406 to S1408 shown in FIG. 14 is performed (S1510 to S1512). Also, in the operation shown in FIG. 15, as in the operation shown in FIG. 14, the transfer completion notification to the SoC 10 that is the process of S <b> 1511 may not be performed.

以上説明したように、本実施形態に係る画像処理装置1においては、メインメモリ20から読み出された画像データを格納する出力データバッファ107及びメインメモリ20から予め画像データを読み出して出力データバッファ107に格納するリードDMAC105が、エンジンやオプションデバイス等の複数の画像処理部により共有される。そして、インターロック型のパラレルバスI/Fを有するオプションAがメインメモリ20から画像データを読み出す際には、リードDMAC105の動作状況に応じて、リードDMAC105がメインメモリ20から読み出された画像データを出力データバッファ107に読み出し、オプションAのリードDMAC123が出力データバッファ107から画像データを読み出す。   As described above, in the image processing apparatus 1 according to the present embodiment, the output data buffer 107 that stores the image data read from the main memory 20 and the image data are read in advance from the main memory 20 and the output data buffer 107. The read DMAC 105 stored in is shared by a plurality of image processing units such as an engine and an optional device. When the option A having the interlock type parallel bus I / F reads the image data from the main memory 20, the image data read from the main memory 20 by the read DMAC 105 is read according to the operation status of the read DMAC 105. Are read to the output data buffer 107, and the option A read DMAC 123 reads the image data from the output data buffer 107.

これにより、オプションAのリードDMAC123は、メインメモリ20から直接画像データを読み出す必要がないので、メモリリードのレイテンシが従来よりも削減される。また、このような構成を実現するためのリードDMAC105及び出力データバッファ107はエンジンや複数のオプションデバイスで共有され、オプションデバイスの接続数に応じて個々にリードDMAC及び出力データバッファを設ける必要がないので、回路規模の増大を抑えることができる。したがって、このような構成により、画像処理装置における回路規模の増加を抑えつつ、画像処理装置に接続されたデバイスによるメモリリードのレイテンシを削減することが可能になる。   As a result, the option A read DMAC 123 does not need to read the image data directly from the main memory 20, so that the latency of the memory read is reduced as compared with the conventional case. Further, the read DMAC 105 and the output data buffer 107 for realizing such a configuration are shared by the engine and a plurality of optional devices, and it is not necessary to provide the read DMAC and the output data buffer individually according to the number of connected optional devices. Therefore, an increase in circuit scale can be suppressed. Therefore, with such a configuration, it is possible to reduce the latency of memory read by a device connected to the image processing apparatus while suppressing an increase in circuit scale in the image processing apparatus.

なお、上記実施形態においては、リードDMAC105によるエンジンASIC140用の動作が完了すると、オプションAのリードDMAC123による画像データの取得先が出力データバッファ107に切り替わる場合を例として説明した。その他、リードDMAC105によるエンジンASIC140用の動作が完了した場合であっても、リードDMACが読み取るべき残りの画像データ量に応じて取得先が出力データバッファ107に切り替わらないようにしてもよい。   In the above-described embodiment, the case where the acquisition destination of the image data by the read DMAC 123 of the option A is switched to the output data buffer 107 when the operation for the engine ASIC 140 by the read DMAC 105 is completed has been described as an example. In addition, even when the operation for the engine ASIC 140 by the read DMAC 105 is completed, the acquisition destination may not be switched to the output data buffer 107 according to the remaining amount of image data to be read by the read DMAC.

この場合、リードDMAC105によるエンジンASIC140用の動作が完了すると、例えば、アクセス制御部112は、アクセス元特定部111が記録している読取済の画像データ量及びDMACレジスタ110のレジスタ設定から求められる総画像データ量から、読み取るべき残りの画像データ量を算出する。そして、アクセス制御部112は、算出した残りの画像データ量が予め定められた閾値よりも小さい場合は、SEL1及びSEL2を制御してリードDMAC123による画像データの読取先が出力データバッファ107に切り替わらないようにする。読み取るべき残りの画像データ量が少ない場合、読取先を出力データバッファ107に切り替えるよりも、そのままメインメモリ20から読取処理を行ったほうが処理の効率がよい可能性があるためである。   In this case, when the operation for the engine ASIC 140 by the read DMAC 105 is completed, for example, the access control unit 112 determines the total amount obtained from the read image data amount recorded by the access source specifying unit 111 and the register setting of the DMAC register 110. The remaining image data amount to be read is calculated from the image data amount. When the calculated remaining image data amount is smaller than a predetermined threshold, the access control unit 112 controls SEL1 and SEL2 so that the read destination of the image data by the read DMAC 123 is not switched to the output data buffer 107. Like that. This is because, when the remaining amount of image data to be read is small, it may be more efficient to perform the reading process from the main memory 20 as it is than to switch the reading destination to the output data buffer 107.

また、上記実施形態においては、インターロック型のパラレルバスI/Fを有するオプションデバイスのリードDMACがメインメモリ20から画像データを読み出す場合に、リードDMAC105の動作状況に応じて、画像データの読取先が出力データバッファ107に切り替えられる場合を例として説明した。その他、インターロック型のパラレルバスI/Fを有するオプションデバイスに限らず、インターロック型又はスプリットトランザクション型のシリアルバスI/Fを有するオプションデバイスのリードDMACがメインメモリ20から画像データを読み出す場合にこのような切替処理が行われてもよい。   In the above embodiment, when the read DMAC of the optional device having the interlock type parallel bus I / F reads image data from the main memory 20, the image data reading destination is determined according to the operation status of the read DMAC 105. Has been described as an example of switching to the output data buffer 107. In addition, when the read DMAC of an optional device having an interlock type or split transaction type serial bus I / F reads image data from the main memory 20 as well as an optional device having an interlock type parallel bus I / F. Such a switching process may be performed.

この場合、オプションデバイスのバス種別に応じて出力データバッファ107をデータの取得先として使用する優先順位が設定される。例えば、パラレルバスI/Fを有するデバイスは、シリアルバスI/Fを有するデバイスよりもブリッジ40を介する必要がある分、メインメモリ20からオプションデバイスまでの距離が長くレイテンシが大きくなるので、パラレルバスI/Fを有するデバイスのほうがシリアルバスI/Fを有するデバイスよりも出力データバッファ107の使用優先順位が高く設定される。   In this case, a priority order for using the output data buffer 107 as a data acquisition destination is set according to the bus type of the optional device. For example, a device having a parallel bus I / F has a longer distance from the main memory 20 to the option device and has a higher latency than the device having a serial bus I / F because it needs to go through the bridge 40. The use priority of the output data buffer 107 is set higher in the device having the I / F than in the device having the serial bus I / F.

また、インターロック型のデバイスはスプリットトランザクション型のデバイスよりもメモリリードのレイテンシが大きくなるので、インターロック型のデバイスのほうがスプリットトランザクション型のデバイスよりも出力データバッファ107の使用優先順位が高く設定される。アクセス制御部112は、このような使用優先順位に基づいていずれのオプションデバイスの画像データの取得先を出力データバッファ107に切り替えるかを決定する。このような構成により、インターロック型のパラレルバスI/Fを有するオプションデバイス以外のデバイスにおいてもメモリリードのレイテンシが削減される。   In addition, since the interlock type device has a larger memory read latency than the split transaction type device, the interlock type device is set to have a higher use priority of the output data buffer 107 than the split transaction type device. The The access control unit 112 determines which option device's image data acquisition destination to switch to the output data buffer 107 based on such usage priority. With this configuration, the memory read latency is reduced even in devices other than the optional device having the interlock type parallel bus I / F.

また、上記実施形態においては、インターロック型のパラレルバスI/Fを有するオプションA及びスプリットトランザクション型のシリアルバスI/Fを有するオプションBがコントローラASIC100に接続される場合を例として説明した。しかしながら、これは一例であり、このようなオプションデバイスが3つ以上、コントローラASIC100に接続されていてもよい。   In the above embodiment, the case where the option A having the interlock type parallel bus I / F and the option B having the split transaction type serial bus I / F are connected to the controller ASIC 100 has been described as an example. However, this is an example, and three or more such optional devices may be connected to the controller ASIC 100.

また、上記実施形態においては、コントローラASIC100が2つのDMACレジスタ104及びDMACレジスタ110を含む場合を例として説明した。しかしながら、これは一例であり、1つのDMACレジスタ104をエンジンASIC140及び複数のオプションデバイスで共有してもよい。この場合、SEL1は不要であり、レジスタ制御部109は、オプションAがメインメモリ20に記憶されている画像データを取得する際に、リードDMAC105がエンジンASIC140用に動作していない場合に、DMACレジスタ122のレジスタ設定をDMACレジスタ104にも設定する。   In the above embodiment, the case where the controller ASIC 100 includes the two DMAC registers 104 and the DMAC register 110 has been described as an example. However, this is an example, and one DMAC register 104 may be shared by the engine ASIC 140 and a plurality of optional devices. In this case, SEL1 is unnecessary, and the register control unit 109 determines that the DMAC register is not used when the read DMAC 105 is not operating for the engine ASIC 140 when the option A acquires image data stored in the main memory 20. The register setting 122 is also set in the DMAC register 104.

また、オプションAによるメインメモリ20からの画像データの取得が完了する前に、エンジンASIC140による画像データの取得が完了した場合、レジスタ制御部109は、オプションAが取得すべき残りの画像データの開始アドレスをDMAC104に対して設定する。また、オプションAによるメインメモリ20からの画像データの取得中に、エンジンASIC140による読出命令が発行された場合、レジスタ制御部109は、エンジンASIC140が取得すべき残りの画像データの開始アドレスをDMAC104に対して設定し、オプションAは、取得すべき残りの画像データをメインメモリ20から取得する。   If the acquisition of image data by the engine ASIC 140 is completed before the acquisition of image data from the main memory 20 by the option A is completed, the register control unit 109 starts the remaining image data to be acquired by the option A. An address is set for the DMAC 104. Further, when a read command is issued by the engine ASIC 140 during acquisition of image data from the main memory 20 by the option A, the register control unit 109 sets the start address of the remaining image data to be acquired by the engine ASIC 140 to the DMAC 104. For option A, the remaining image data to be acquired is acquired from the main memory 20.

2つのDMACレジスタ104及び110が設けられている場合はDMACレジスタ104の書き換えが不要である点で処理効率がよいが、1つのDMAC104を共有させた場合回路規模はより小さくなる。また、その他、コントローラASIC100が3つ以上のDMACレジスタを含んでもよい。この場合回路規模は多少大きくなるが、各画像処理部の制御情報を管理する点では効率がよくなる。   When two DMAC registers 104 and 110 are provided, the processing efficiency is good in that rewriting of the DMAC register 104 is unnecessary, but the circuit scale becomes smaller when one DMAC 104 is shared. In addition, the controller ASIC 100 may include three or more DMAC registers. In this case, the circuit scale is somewhat larger, but the efficiency is improved in terms of managing the control information of each image processing unit.

また、上記実施形態においては、レジスタ制御部109、アクセス元特定部111及びアクセス制御部112は、ASICとして構成されるハードウェアで実現される場合を例として説明した。しかしながら、これは一例であり、これらの構成部がソフトウェアで実現されてもよい。この場合、図示しないROMやHDD若しくは光学ディスク等の記録媒体に格納されたプログラムがRAMに読み出され、CPUがそれらのプログラムに従って演算を行うことにより、ソフトウェア制御部が構成される。このようにして構成されたソフトウェア制御部と、ハードウェアとの組み合わせによって、本実施形態に係るレジスタ制御部109、アクセス元特定部111及びアクセス制御部112の機能を実現する機能ブロックが構成される。   In the above embodiment, the case where the register control unit 109, the access source specifying unit 111, and the access control unit 112 are realized by hardware configured as an ASIC has been described as an example. However, this is an example, and these components may be realized by software. In this case, a program stored in a recording medium such as a ROM, an HDD, or an optical disk (not shown) is read out to the RAM, and a software control unit is configured by the CPU performing calculations according to those programs. A functional block that realizes the functions of the register control unit 109, the access source specifying unit 111, and the access control unit 112 according to the present embodiment is configured by a combination of the software control unit configured in this way and hardware. .

また、上記実施形態においては、画像処理装置1を例として説明し、エンジンやオプションデバイスがメインメモリ20から画像データを読み出す場合を例として説明した。しかしながら、本実施形態は画像処理装置1に限らず、メインメモリに格納されたデータを処理する情報処理装置における専用エンジンやオプションデバイスがメインメモリに記憶されているデータを読み出す場合であっても同様に適用可能である。   In the above embodiment, the image processing apparatus 1 has been described as an example, and the case where the engine or the optional device reads image data from the main memory 20 has been described as an example. However, the present embodiment is not limited to the image processing apparatus 1, and the same applies to a case where a dedicated engine or an optional device in an information processing apparatus that processes data stored in the main memory reads out data stored in the main memory. It is applicable to.

1 画像処理装置
10 SoC
20 メインメモリ
30 スイッチ
40 ブリッジ
50 エンジンCPU
100 コントローラASIC
101、102、103、141 シリアル通信部
104、110、122、142 DMACレジスタ
105、123、143 リードDMAC
106 出力画像編集部
107 出力データバッファ
108 内部バス
109 レジスタ制御部
111 アクセス元特定部
112 アクセス制御部
113、114 セレクタ
120、130 オプションデバイス
121 パラレル通信部
124 オプション処理部
125 ライトDMAC
140 エンジンASIC
1 Image processing device 10 SoC
20 Main memory 30 Switch 40 Bridge 50 Engine CPU
100 Controller ASIC
101, 102, 103, 141 Serial communication unit 104, 110, 122, 142 DMAC register 105, 123, 143 Read DMAC
106 Output image editing unit 107 Output data buffer 108 Internal bus 109 Register control unit 111 Access source specifying unit 112 Access control unit 113, 114 Selector 120, 130 Option device 121 Parallel communication unit 124 Option processing unit 125 Write DMAC
140 Engine ASIC

特開平9−198300号公報JP-A-9-198300 特開2012−034254号公報JP 2012-034254 A

Claims (9)

画像データを格納する画像記憶媒体から画像データを取得して処理する画像処理部を複数含む画像処理装置であって、
処理されるべき画像データを読み出す読出命令に従って前記画像記憶媒体から画像データを読み出し、該画像データを格納する記憶媒体である処理対象画像記憶媒体に、読み出した該画像データを記憶させるデータ記憶処理部と、
前記複数の画像処理部の1つが取得するべき画像データの前記画像記憶媒体における記憶領域を示す所定の制御情報を格納する記憶媒体である制御情報記憶媒体に、前記所定の制御情報を記憶させる記憶媒体制御部と、
前記複数の画像処理部の動作状況に応じて、前記複数の画像処理部のうち、前記所定の制御情報において示されている記憶領域から画像データを取得するべき画像処理部に前記処理対象画像記憶媒体から画像データを取得させるように切り替える切替制御部と
を含むことを特徴とする画像処理装置。
An image processing apparatus including a plurality of image processing units that acquire and process image data from an image storage medium that stores the image data,
A data storage processing unit that reads image data from the image storage medium in accordance with a read command for reading image data to be processed, and stores the read image data in a processing target image storage medium that is a storage medium for storing the image data When,
Storage for storing the predetermined control information in a control information storage medium that is a storage medium for storing predetermined control information indicating a storage area in the image storage medium of image data to be acquired by one of the plurality of image processing units A medium control unit;
According to the operation status of the plurality of image processing units, among the plurality of image processing units, the processing target image storage is performed in an image processing unit that acquires image data from a storage area indicated in the predetermined control information. A switching control unit that switches to obtain image data from the medium ;
An image processing apparatus comprising:
前記複数の画像処理部それぞれには、前記処理対象画像記憶媒体からの画像データの取得について優先順位が設定されており、
前記記憶媒体制御部は、前記優先順位の異なる前記画像処理部それぞれが取得するべき画像データの前記画像記憶媒体における記憶領域を示す所定の制御情報それぞれを、複数の前記制御情報記憶媒体に記憶させ、
前記切替制御部は、前記複数の制御情報記憶媒体それぞれに記憶されている前記所定の制御情報において示されている記憶領域から画像データを取得するべき画像処理部うちの1つである対象画像処理部が新たに前記画像データを取得する際、前記対象画像処理部よりも優先順位の高い他の画像処理部が前記処理対象画像記憶媒体から画像データを取得中である場合を除いて、前記複数の制御情報記憶媒体それぞれに記憶されている複数の所定の制御情報のうち、前記対象画像処理部が取得するべき画像データの前記画像記憶媒体における記憶領域を示す所定の制御情報が用いられるように切り替え、前記対象画像処理部に前記処理対象画像記憶媒体から画像データを取得させるように切り替える
ことを特徴とする請求項1に記載の画像処理装置。
In each of the plurality of image processing units, a priority order is set for obtaining image data from the processing target image storage medium,
The storage medium control unit stores, in a plurality of the control information storage media, predetermined control information indicating storage areas in the image storage medium of image data to be acquired by the image processing units having different priorities. ,
The switching control unit is a target image process that is one of image processing units that should acquire image data from a storage area indicated in the predetermined control information stored in each of the plurality of control information storage media. When the image acquisition unit newly acquires the image data, the plural image processing units except for the case where another image processing unit having a higher priority than the target image processing unit is acquiring image data from the processing target image storage medium. Among the plurality of predetermined control information stored in each control information storage medium, the predetermined control information indicating the storage area in the image storage medium of the image data to be acquired by the target image processing unit is used. Switching to switch the target image processing unit to acquire image data from the processing target image storage medium ,
The image processing apparatus according to claim 1.
記切替制御部は、
優先順位の高い前記他の画像処理部が前記処理対象画像記憶媒体から画像データを取得中である場合、前記複数の所定の制御情報のうち、前記他の画像処理部が取得するべき画像データの前記画像記憶媒体における記憶領域を示す所定の制御情報が用いられるように切り替え、前記他の画像処理部に前記処理対象画像記憶媒体から画像データを取得させ前記対象画像処理部に前記画像記憶媒体から画像データを取得させるように切り替え、
前記対象画像処理部による画像データの取得が完了する前に前記他の画像処理部による画像データの取得が完了すると、前記複数の所定の制御情報のうち、前記対象画像処理部が取得するべき画像データの前記画像記憶媒体における記憶領域を示す所定の制御情報が用いられるように切り替え、前記対象画像処理部に前記処理対象画像記憶媒体から画像データを取得させるように切り替える
ことを特徴とする請求項2に記載の画像処理装置。
Before Symbol switching control unit,
When the other image processing unit having a higher priority is acquiring image data from the processing target image storage medium, of the plurality of predetermined control information, the image data to be acquired by the other image processing unit Switching to use predetermined control information indicating a storage area in the image storage medium, causing the other image processing unit to acquire image data from the processing target image storage medium, and causing the target image processing unit to acquire image data from the image storage medium Switch to get image data,
If the acquisition of image data by the other image processing unit is completed before the acquisition of image data by the target image processing unit is completed, the image to be acquired by the target image processing unit among the plurality of predetermined control information Switching so that predetermined control information indicating a storage area of data in the image storage medium is used, and switching so that the target image processing unit acquires image data from the processing target image storage medium ;
The image processing apparatus according to claim 2.
前記切替制御部は、
前記対象画像処理部による画像データの取得が完了する前に前記他の画像処理部による画像データの取得が完了すると、前記対象画像処理部により処理される画像データが取得すべき残りのデータ量を算出し、
算出された前記残りのデータ量に応じて、前記複数の所定の制御情報のうち、前記対象画像処理部が取得するべき画像データの前記画像記憶媒体における記憶領域を示す所定の制御情報が用いられるように切り替え、前記対象画像処理部に前記処理対象画像記憶媒体から画像データを取得させるように切り替える
ことを特徴とする請求項3に記載の画像処理装置。
The switching control unit
If the acquisition of the image data by the other image processing unit is completed before the acquisition of the image data by the target image processing unit is completed, the remaining data amount to be acquired by the image data processed by the target image processing unit is determined. Calculate
Of the plurality of predetermined control information, predetermined control information indicating a storage area in the image storage medium of the image data to be acquired by the target image processing unit is used according to the calculated remaining data amount. Switching so that the target image processing unit acquires image data from the processing target image storage medium ,
The image processing apparatus according to claim 3.
前記切替制御部は、前記対象画像処理部が前記処理対象画像記憶媒体から画像データを取得中に前記他の画像処理部による前記画像記憶媒体からの画像データの読出命令が発行された場合、前記複数の所定の制御情報のうち、前記他の画像処理部が取得するべき画像データの前記画像記憶媒体における記憶領域を示す所定の制御情報が用いられるように切り替え、前記他の画像処理部に前記処理対象画像記憶媒体から画像データを取得させ前記対象画像処理部に前記画像記憶媒体から画像データを取得させるように切り替える
ことを特徴とする請求項2〜4のいずれか1項に記載の画像処理装置。
The switching control unit is configured such that when the target image processing unit obtains image data from the processing target image storage medium and an image data read command from the image storage medium is issued by the other image processing unit, Among a plurality of predetermined control information, switching is performed so that predetermined control information indicating a storage area in the image storage medium of image data to be acquired by the other image processing unit is used, and the other image processing unit Switching to acquire image data from the processing target image storage medium and cause the target image processing unit to acquire image data from the image storage medium ;
The image processing apparatus according to claim 2, wherein the image processing apparatus is an image processing apparatus.
前記複数の画像処理部それぞれには、前記処理対象画像記憶媒体からの画像データの取得について優先順位が設定されており、
前記記憶媒体制御部は、前記複数の画像処理部のうちの1つが新たに前記画像データを取得する際、新たに前記画像データを取得する画像処理部である対象画像処理部よりも優先順位の高い他の画像処理部が前記処理対象画像記憶媒体から画像データを取得中である場合を除いて、前記所定の制御情報を前記制御情報記憶媒体に記憶させ、
前記切替制御部は、優先順位の高い前記他の画像処理部が前記処理対象画像記憶媒体から画像データを取得中である場合を除いて、前記対象画像処理部に前記処理対象画像記憶媒体から画像データを取得させるように切り替える
ことを特徴とする請求項1に記載の画像処理装置。
In each of the plurality of image processing units, a priority order is set for obtaining image data from the processing target image storage medium,
The storage medium control unit has a higher priority than a target image processing unit that is an image processing unit that newly acquires the image data when one of the plurality of image processing units newly acquires the image data. Except when a high image processing unit is acquiring image data from the processing target image storage medium, the predetermined control information is stored in the control information storage medium,
The switching control unit is configured to send an image from the processing target image storage medium to the target image processing unit, except when the other image processing unit having a high priority is acquiring image data from the processing target image storage medium. Switch to get data ,
The image processing apparatus according to claim 1.
前記優先順位は、前記画像処理部において実行される処理の種類に応じて設定される
ことを特徴とする請求項2、3または6のいずれか1項に記載の画像処理装置。
The image processing apparatus according to claim 2 , wherein the priority is set according to a type of processing executed in the image processing unit.
前記優先順位は、前記画像処理部に対応するバスの種別に応じてさらに設定される
ことを特徴とする請求項7に記載の画像処理装置。
The priority is further set according to the type of bus corresponding to the image processing unit ,
The image processing apparatus according to claim 7.
画像データを格納する画像記憶媒体から画像データを取得して処理する画像処理部を複数含む画像処理装置の制御方法であって、
前記画像処理装置は、処理されるべき画像データを読み出す読出命令に従って前記画像記憶媒体から画像データを読み出し、該画像データを格納する記憶媒体である処理対象画像記憶媒体に、読み出した該画像データを記憶させるデータ記憶処理部を含み、
前記複数の画像処理部の1つが取得するべき画像データの前記画像記憶媒体における記憶領域を示す所定の制御情報を格納する記憶媒体である制御情報記憶媒体に、前記所定の制御情報を記憶させ、
前記複数の画像処理部の動作状況に応じて、前記複数の画像処理部のうち、前記所定の制御情報において示されている記憶領域から画像データを取得するべき画像処理部に前記処理対象画像記憶媒体から画像データを取得させるように切り替える
ことを特徴とする画像処理装置の制御方法。
A control method for an image processing apparatus including a plurality of image processing units for acquiring and processing image data from an image storage medium for storing image data,
The image processing apparatus reads image data from the image storage medium in accordance with a read command for reading image data to be processed, and stores the read image data on a processing target image storage medium that is a storage medium for storing the image data. Including a data storage processing unit for storing,
Storing the predetermined control information in a control information storage medium that is a storage medium for storing predetermined control information indicating a storage area in the image storage medium of image data to be acquired by one of the plurality of image processing units;
According to the operation status of the plurality of image processing units, among the plurality of image processing units, the processing target image storage is performed in an image processing unit that acquires image data from a storage area indicated in the predetermined control information. Switch to get image data from the media ,
And a control method for the image processing apparatus.
JP2014119700A 2014-06-10 2014-06-10 Image processing apparatus and image processing apparatus control method Expired - Fee Related JP6331735B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014119700A JP6331735B2 (en) 2014-06-10 2014-06-10 Image processing apparatus and image processing apparatus control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014119700A JP6331735B2 (en) 2014-06-10 2014-06-10 Image processing apparatus and image processing apparatus control method

Publications (2)

Publication Number Publication Date
JP2015233235A JP2015233235A (en) 2015-12-24
JP6331735B2 true JP6331735B2 (en) 2018-05-30

Family

ID=54934456

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014119700A Expired - Fee Related JP6331735B2 (en) 2014-06-10 2014-06-10 Image processing apparatus and image processing apparatus control method

Country Status (1)

Country Link
JP (1) JP6331735B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110598506B (en) * 2018-06-12 2022-09-13 佛山市顺德区美的电热电器制造有限公司 Information acquisition method, equipment and computer readable storage medium

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005215953A (en) * 2004-01-29 2005-08-11 Matsushita Electric Ind Co Ltd Information processor
JP2005242408A (en) * 2004-02-24 2005-09-08 Matsushita Electric Ind Co Ltd Shared memory access control method
JP2007172112A (en) * 2005-12-20 2007-07-05 Victor Co Of Japan Ltd Memory controller

Also Published As

Publication number Publication date
JP2015233235A (en) 2015-12-24

Similar Documents

Publication Publication Date Title
JP2004005541A (en) Data transfer device, data transfer method, program and recording medium
JP5438371B2 (en) Image processing apparatus and image processing method
JP6331735B2 (en) Image processing apparatus and image processing apparatus control method
US10423557B2 (en) Information processing apparatus and semiconductor integrated circuit including ring bus system
JP4696748B2 (en) Image forming system, interrupt processing method, and printing apparatus
US20120124250A1 (en) Information processing apparatus and method of controlling same
JP6904697B2 (en) Information processing device and communication control method
JP2019219803A (en) Controller, image forming apparatus, control method and control program
JP2007310770A (en) Print control device, printing system, printing control method and program
JP5340058B2 (en) Image processing apparatus, control method thereof, and program
EP1387567A2 (en) Image forming apparatus, control method, system, and recording medium
US9667531B2 (en) Image processing apparatus and control method
JP2009070012A (en) Information processor, information processing method, and data transfer unit
US8514441B2 (en) Image processing apparatus and control method thereof, in which an address for image data depends on whether the image data is input via a detachable image processing device
JP2009225435A (en) Controller unit and its control method
JP4909839B2 (en) Image processing apparatus and image processing method
JP2014130425A (en) Image forming apparatus
JP2012061639A (en) Image forming apparatus and printing control method
JP5337890B2 (en) Image forming apparatus
JP5245803B2 (en) Image processing apparatus and image processing module
JP5587029B2 (en) Image processing apparatus and image processing apparatus control method
JP2021098300A (en) Image formation device
JP2006345329A (en) Image forming apparatus, image forming system, and image control device
JP5494055B2 (en) Image forming apparatus, control method, program, and recording medium
JP2007087347A (en) Data transfer unit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170519

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180123

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180323

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180403

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180416

R151 Written notification of patent or utility model registration

Ref document number: 6331735

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees