JP2007058578A - Image processing system, program thereof, and job executing method - Google Patents

Image processing system, program thereof, and job executing method Download PDF

Info

Publication number
JP2007058578A
JP2007058578A JP2005243170A JP2005243170A JP2007058578A JP 2007058578 A JP2007058578 A JP 2007058578A JP 2005243170 A JP2005243170 A JP 2005243170A JP 2005243170 A JP2005243170 A JP 2005243170A JP 2007058578 A JP2007058578 A JP 2007058578A
Authority
JP
Japan
Prior art keywords
job
image processing
serial bus
executed
speed serial
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.)
Granted
Application number
JP2005243170A
Other languages
Japanese (ja)
Other versions
JP4607706B2 (en
Inventor
Mitsuhiro Oizumi
充弘 大泉
Takeshi Hayafune
武志 早船
Sugitaka Otegi
杉高 樗木
Narihiro Masui
成博 増井
Mitsuharu Takeo
光治 竹尾
Hiroki Uchiyama
博喜 内山
Kenji Wakabayashi
謙二 若林
Noriyuki Terao
典之 寺尾
Junichi Ikeda
純一 池田
Koji Oshikiri
幸治 押切
Satoru Numakura
覚 沼倉
Yutaka Yoneda
豊 米田
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 JP2005243170A priority Critical patent/JP4607706B2/en
Publication of JP2007058578A publication Critical patent/JP2007058578A/en
Application granted granted Critical
Publication of JP4607706B2 publication Critical patent/JP4607706B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image processing system, a program thereof, and a job executing method in which the system does not malfunction or an image does not become abnormal. <P>SOLUTION: The system of this invention refers to the number of lanes of links of high speed serial bus and combination of jobs (S13), determines whether simultaneous execution of a plurality of jobs is possible or not (S14), and permits starts of processing of various jobs (S15 to S18). Thereby, since the system can permit start of processing of a job by referring to the number of lane of links of high speed serial bus and determining whether simultaneous execution of a plurality of jobs is possible or not, the system does not malfunction or the image does not become abnormal. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、画像処理システム、プログラムおよびジョブ実行方法に関する。   The present invention relates to an image processing system, a program, and a job execution method.

一般に、画像データその他のデータを扱うデジタル複写機、複合機(MFP)等の画像処理システムでは、デバイス間のインタフェースにPCIバスが使用されている。   In general, in an image processing system such as a digital copying machine or a multifunction peripheral (MFP) that handles image data and other data, a PCI bus is used as an interface between devices.

このようにPCIバスを使用する画像処理システムにおいては、PCIバスのリソースが100%を超えることを想定し、PCIバスの使用率が100%を超えないようにソフトで制御して異常動作や異常画像にならないようにしている(例えば、特許文献1参照)。   As described above, in an image processing system using a PCI bus, it is assumed that the PCI bus resource exceeds 100%, and the abnormal operation or abnormality is controlled by software so that the PCI bus usage rate does not exceed 100%. An image is prevented (see, for example, Patent Document 1).

また、パラレル方式のPCIバスでは、レーシングやスキューなどの問題があり、高速・高画質の画像形成装置に使用するには、転送レートが低い段階にきており、最近では、PCIバスのようなパラレル方式のインタフェースに代えて、IEEE1394やUSB等の高速シリアルインタフェースの使用が検討されている。例えば、特許文献2によれば、内部インタフェースとして、IEEE1394やUSB等の高速シリアルインタフェースを使用することが提案されている。   In addition, the parallel PCI bus has problems such as racing and skew, and the transfer rate has come to a low level for use in a high-speed and high-quality image forming apparatus. The use of a high-speed serial interface such as IEEE1394 or USB is being considered in place of the parallel interface. For example, according to Patent Document 2, it is proposed to use a high-speed serial interface such as IEEE1394 or USB as an internal interface.

また、他の高速シリアルインタフェースとして、PCIバス方式の後継規格に当るPCI Express(登録商標)なるインタフェースも提案され、実用化の段階にきている(例えば、非特許文献1参照)。このPCI Expressシステムは、概略的には、例えば非特許文献1中の図1等に示されるようなルートコンプレックス−スイッチ(任意階層)−デバイス等のツリー構造(木構造)によるデータ通信網として構成されている。   As another high-speed serial interface, an interface called PCI Express (registered trademark), which is a successor to the PCI bus system, has been proposed and has been put to practical use (for example, see Non-Patent Document 1). This PCI Express system is schematically configured as a data communication network having a tree structure (tree structure) such as a root complex-switch (arbitrary hierarchy) -device as shown in FIG. Has been.

特開2005−092541号公報Japanese Patent Laying-Open No. 2005-092541 特開2001−016382号公報JP 2001-016382 A “PCI Express 規格の概要”Interface誌、July’2003 里見尚志“Outline of PCI Express Standard” Interface, July’2003 Naoshi Satomi

ところが、特許文献1に記載されている手法によれば、PCIバス幅が画像処理システムによって固定されてしまうことから、例えば32ビットから64ビットへの繋ぎ換えなどに対応することができないという問題がある。   However, according to the method described in Patent Document 1, since the PCI bus width is fixed by the image processing system, there is a problem that it is not possible to cope with, for example, switching from 32 bits to 64 bits. is there.

本発明は、上記に鑑みてなされたものであって、システムが誤動作したり、画像が異常になることがない画像処理システム、プログラムおよびジョブ実行方法を提供することを目的とする。   The present invention has been made in view of the above, and an object thereof is to provide an image processing system, a program, and a job execution method in which the system does not malfunction or an image becomes abnormal.

上述した課題を解決し、目的を達成するために、請求項1にかかる発明は、木構造によるデータ通信網としてポイントツーポイントで送受信独立の通信チャネルが確立される高速シリアルバスにより画像処理エンジンとコントローラとを接続し、前記画像処理エンジンと前記コントローラとの間におけるジョブの複数同時実行が可能な画像処理システムにおいて、前記高速シリアルバスのリンクのレーン数及びジョブの組み合わせを参照して、ジョブの複数同時実行が可能かどうか判断し、各種ジョブの処理開始を許可するようにした。   In order to solve the above-described problems and achieve the object, the invention according to claim 1 is an image processing engine and a high-speed serial bus in which a communication channel independent of transmission and reception is established point-to-point as a tree-structured data communication network. In an image processing system in which a plurality of jobs can be simultaneously executed between the image processing engine and the controller by referring to the number of lanes of the link of the high-speed serial bus and a combination of jobs. Judged whether multiple jobs can be executed at the same time, and allowed the start of processing of various jobs.

また、請求項2にかかる発明は、木構造によるデータ通信網としてポイントツーポイントで送受信独立の通信チャネルが確立される高速シリアルバスにより画像処理エンジンとコントローラとを接続し、前記画像処理エンジンと前記コントローラとの間におけるジョブの複数同時実行が可能な画像処理システムにおいて、前記画像処理エンジンと前記コントローラとの間の前記高速シリアルバスのレーン情報を取得するレーン情報取得手段と、少なくとも1以上のジョブの実行指示を受けつけるジョブ実行受付手段と、このジョブ実行受付手段により画像出力系のジョブと画像入力系のジョブとをそれぞれ受け付けた場合であって前記高速シリアルバスのリソースが100%を超えてしまう場合には、前記レーン情報取得手段により取得した前記高速シリアルバスのレーン情報に従って前記各ジョブの実行を排他制御する排他制御手段と、を備える。   According to a second aspect of the present invention, an image processing engine and a controller are connected to each other by a high-speed serial bus that establishes a point-to-point transmission / reception independent communication channel as a tree-structured data communication network. In an image processing system capable of simultaneously executing a plurality of jobs with a controller, lane information acquisition means for acquiring lane information of the high-speed serial bus between the image processing engine and the controller, and at least one job The job execution receiving means for receiving the execution instruction and the image output type job and the image input type job respectively received by the job execution receiving means, the resource of the high-speed serial bus exceeds 100%. In the case, it was acquired by the lane information acquisition means And a lock control means for exclusively controlling the execution of each job according to the serial lane information of the high-speed serial bus.

また、請求項3にかかる発明は、請求項2記載の画像処理システムにおいて、前記排他制御手段は、前記ジョブ実行受付手段により画像出力系のジョブと画像入力系のジョブとをそれぞれ受け付けた場合、前記レーン情報取得手段により取得した前記高速シリアルバスのレーン情報に従って、前記各ジョブの同時実行が可能かどうかを判断するジョブ実行判断手段と、このジョブ実行判断手段により前記各ジョブの同時実行が可能であると判断した場合には、指示があった前記画像出力系のジョブと前記画像入力系のジョブとをそれぞれを実行するジョブ実行手段と、前記ジョブ実行判断手段により前記各ジョブの同時実行が可能でないと判断した場合には、指示があった前記画像出力系のジョブと前記画像入力系のジョブとのいずれか一方の実行を保留するジョブ保留手段と、このジョブ保留手段により保留された前記ジョブの実行が可能かどうかを判断するジョブ実行再判断手段と、このジョブ実行再判断手段により前記各ジョブの実行が可能であると判断した場合には、保留されていた前記ジョブを実行する保留ジョブ実行手段と、を備える。   According to a third aspect of the present invention, in the image processing system according to the second aspect, when the exclusive control unit receives an image output job and an image input job by the job execution receiving unit, According to the lane information of the high-speed serial bus acquired by the lane information acquisition unit, a job execution determination unit that determines whether the jobs can be executed simultaneously, and the job execution determination unit can execute the jobs simultaneously. The job execution unit that executes the image output job and the image input job that are instructed, and the job execution determination unit can execute each job simultaneously. If it is determined that it is not possible, one of the image output job and the image input job that are instructed The job holding means for holding execution, the job execution redetermining means for judging whether the job held by the job holding means can be executed, and the job execution redetermining means can execute each job. When it is determined that there is a job, a job holding unit that executes the job that has been held is provided.

また、請求項4にかかる発明は、請求項3記載の画像処理システムにおいて、前記ジョブ実行判断手段は、前記画像処理エンジンと前記コントローラとの間の前記高速シリアルバスのレーン情報の組み合わせ毎に、前記画像出力系のジョブと前記画像入力系のジョブとの組み合わせに応じてジョブの排他制御を設定した排他制御テーブルを参照して、前記各ジョブの同時実行が可能かどうかを判断する。   According to a fourth aspect of the present invention, in the image processing system according to the third aspect, the job execution determination unit is configured to combine each lane information of the high-speed serial bus between the image processing engine and the controller. It is determined whether or not each job can be executed simultaneously with reference to an exclusive control table in which exclusive control of the job is set according to the combination of the image output job and the image input job.

また、請求項5にかかる発明は、請求項3記載の画像処理システムにおいて、前記ジョブ保留手段は、指示のあったジョブが実行中のジョブより優先順位が高く設定されている場合、実行中のジョブを保留して指示のあったジョブを割り込ませる。   According to a fifth aspect of the present invention, in the image processing system according to the third aspect, when the job holding unit is set to have a higher priority than the job being executed, Hold the job and interrupt the specified job.

また、請求項6にかかる発明は、請求項4記載の画像処理システムにおいて、前記排他制御テーブルは、画像処理内容に応じて可変である。   According to a sixth aspect of the present invention, in the image processing system according to the fourth aspect, the exclusive control table is variable according to the contents of the image processing.

また、請求項7にかかる発明は、請求項3記載の画像処理システムにおいて、前記ジョブ実行判断手段は、3つ以上のジョブが実行できるかどうかについては、ジョブ1つ毎に前記高速シリアルバスの帯域をどの程度使うのかを1次元のテーブルとして持ち、それらの合計が100%を超えるかどうか判断する。   According to a seventh aspect of the present invention, in the image processing system according to the third aspect, the job execution determining means determines whether or not three or more jobs can be executed by determining whether the high-speed serial bus is used for each job. It has a one-dimensional table indicating how much bandwidth is used, and determines whether or not the total of these tables exceeds 100%.

また、請求項8にかかる発明は、請求項1ないし7のいずれか一記載の画像処理システムにおいて、前記高速シリアルバスは、PCI Express 規格の高速シリアルバスである。   According to an eighth aspect of the present invention, in the image processing system according to any one of the first to seventh aspects, the high-speed serial bus is a PCI Express standard high-speed serial bus.

また、請求項9にかかる発明は、木構造によるデータ通信網としてポイントツーポイントで送受信独立の通信チャネルが確立される高速シリアルバスにより画像処理エンジンとコントローラとを接続し、前記画像処理エンジンと前記コントローラとの間におけるジョブの複数同時実行をコンピュータに実行させるプログラムであって、前記画像処理エンジンと前記コントローラとの間の前記高速シリアルバスのレーン情報を取得するレーン情報取得機能と、少なくとも1以上のジョブの実行指示を受けつけるジョブ実行受付機能と、このジョブ実行受付機能により画像出力系のジョブと画像入力系のジョブとをそれぞれ受け付けた場合であって前記高速シリアルバスのリソースが100%を超えてしまう場合には、前記レーン情報取得機能により取得した前記高速シリアルバスのレーン情報に従って前記各ジョブの実行を排他制御する排他制御機能と、を前記コンピュータに実行させる。   According to a ninth aspect of the present invention, an image processing engine and a controller are connected to each other by a high-speed serial bus that establishes a point-to-point transmission / reception independent communication channel as a tree-structured data communication network. A program for causing a computer to execute a plurality of jobs simultaneously with a controller, the lane information acquisition function for acquiring lane information of the high-speed serial bus between the image processing engine and the controller, and at least one or more Job execution acceptance function that accepts job execution instructions, and image output jobs and image input jobs received by the job execution acceptance function, respectively, and the high-speed serial bus resource exceeds 100% The lane information acquisition function And an exclusive control function for exclusively controlling the execution of each job according to the obtained lane information of the high-speed serial bus Ri, the causes the computer to perform.

また、請求項10にかかる発明は、請求項9記載のプログラムにおいて、前記排他制御機能は、前記ジョブ実行受付機能により画像出力系のジョブと画像入力系のジョブとをそれぞれ受け付けた場合、前記レーン情報取得機能により取得した前記高速シリアルバスのレーン情報に従って、前記各ジョブの同時実行が可能かどうかを判断するジョブ実行判断機能と、このジョブ実行判断機能により前記各ジョブの同時実行が可能であると判断した場合には、指示があった前記画像出力系のジョブと前記画像入力系のジョブとをそれぞれを実行するジョブ実行機能と、前記ジョブ実行判断機能により前記各ジョブの同時実行が可能でないと判断した場合には、指示があった前記画像出力系のジョブと前記画像入力系のジョブとのいずれか一方の実行を保留するジョブ保留機能と、このジョブ保留機能により保留された前記ジョブの実行が可能かどうかを判断するジョブ実行再判断機能と、このジョブ実行再判断機能により前記各ジョブの実行が可能であると判断した場合には、保留されていた前記ジョブを実行する保留ジョブ実行機能と、を前記コンピュータに実行させる。   The invention according to claim 10 is the program according to claim 9, wherein the exclusive control function receives the image output system job and the image input system job by the job execution reception function. According to the lane information of the high-speed serial bus acquired by the information acquisition function, a job execution determination function that determines whether or not each job can be executed simultaneously, and the job execution determination function allows each job to be executed simultaneously. The job execution function for executing the specified image output job and the image input job, and the job execution determination function, the jobs cannot be executed simultaneously. If it is determined that the image output job or the image input job is instructed, The job hold function for holding the job, the job execution redetermination function for determining whether the job held by the job hold function can be executed, and the job execution redetermination function can execute each job. If it is determined, the computer is caused to execute a hold job execution function for executing the hold job.

また、請求項11にかかる発明は、請求項10記載のプログラムにおいて、前記ジョブ実行判断機能は、前記画像処理エンジンと前記コントローラとの間の前記高速シリアルバスのレーン情報の組み合わせ毎に、前記画像出力系のジョブと前記画像入力系のジョブとの組み合わせに応じてジョブの排他制御を設定した排他制御テーブルを参照して、前記各ジョブの同時実行が可能かどうかを判断する。   According to an eleventh aspect of the present invention, in the program according to the tenth aspect, the job execution determination function is configured to output the image for each combination of lane information of the high-speed serial bus between the image processing engine and the controller. The exclusive control table in which exclusive control of the job is set according to the combination of the output job and the image input job is referred to determine whether the jobs can be executed simultaneously.

また、請求項12にかかる発明は、請求項10記載のプログラムにおいて、前記ジョブ保留機能は、指示のあったジョブが実行中のジョブより優先順位が高く設定されている場合、実行中のジョブを保留して指示のあったジョブを割り込ませる。   In the program according to claim 12, in the program according to claim 10, when the job instructed is set to have a higher priority than the job being executed, the job holding function Hold the specified job and interrupt it.

また、請求項13にかかる発明は、請求項11記載のプログラムにおいて、前記排他制御テーブルは、画像処理内容に応じて可変である。   According to a thirteenth aspect of the present invention, in the program according to the eleventh aspect, the exclusive control table is variable according to image processing contents.

また、請求項14にかかる発明は、請求項10記載のプログラムにおいて、前記ジョブ実行判断機能は、3つ以上のジョブが実行できるかどうかについては、ジョブ1つ毎に前記高速シリアルバスの帯域をどの程度使うのかを1次元のテーブルとして持ち、それらの合計が100%を超えるかどうか判断する。   According to a fourteenth aspect of the present invention, in the program according to the tenth aspect, the job execution determination function determines the bandwidth of the high-speed serial bus for each job as to whether or not three or more jobs can be executed. The degree of use is held as a one-dimensional table, and it is determined whether or not the total of these tables exceeds 100%.

また、請求項15にかかる発明は、木構造によるデータ通信網としてポイントツーポイントで送受信独立の通信チャネルが確立される高速シリアルバスにより画像処理エンジンとコントローラとを接続し、前記画像処理エンジンと前記コントローラとの間におけるジョブの複数同時実行が可能な画像処理システムにおけるジョブ実行方法であって、前記高速シリアルバスのリンクのレーン数及びジョブの組み合わせを参照して、ジョブの複数同時実行が可能かどうか判断し、各種ジョブの処理開始を許可するようにした。   According to a fifteenth aspect of the present invention, an image processing engine and a controller are connected to each other by a high-speed serial bus that establishes a point-to-point transmission / reception independent communication channel as a tree-structured data communication network. A method for executing a job in an image processing system capable of simultaneously executing a plurality of jobs with a controller, wherein a plurality of jobs can be simultaneously executed by referring to the number of lanes and job combinations of the high-speed serial bus. Judgment whether to start processing of various jobs.

また、請求項16にかかる発明は、木構造によるデータ通信網としてポイントツーポイントで送受信独立の通信チャネルが確立される高速シリアルバスにより画像処理エンジンとコントローラとを接続し、前記画像処理エンジンと前記コントローラとの間におけるジョブの複数同時実行が可能な画像処理システムにおけるジョブ実行方法であって、前記画像処理エンジンと前記コントローラとの間の前記高速シリアルバスのレーン情報を取得するレーン情報取得工程と、少なくとも1以上のジョブの実行指示を受けつけるジョブ実行受付工程と、このジョブ実行受付工程により画像出力系のジョブと画像入力系のジョブとをそれぞれ受け付けた場合であって前記高速シリアルバスのリソースが100%を超えてしまう場合には、前記レーン情報取得工程により取得した前記高速シリアルバスのレーン情報に従って前記各ジョブの実行を排他制御する排他制御工程と、を含む。   According to a sixteenth aspect of the present invention, an image processing engine and a controller are connected to each other by a high-speed serial bus that establishes a point-to-point transmission / reception independent communication channel as a tree-structured data communication network. A job execution method in an image processing system capable of simultaneously executing a plurality of jobs with a controller, wherein the lane information acquisition step acquires lane information of the high-speed serial bus between the image processing engine and the controller; A job execution receiving step for receiving an instruction to execute at least one job, and an image output type job and an image input type job received by the job execution receiving step, respectively. If it exceeds 100%, the lane information It includes exclusive control step of performing exclusive control of execution of each job according to lane information of the high-speed serial bus acquired by the acquisition step.

また、請求項17にかかる発明は、請求項16記載のジョブ実行方法において、前記排他制御工程は、前記ジョブ実行受付工程により画像出力系のジョブと画像入力系のジョブとをそれぞれ受け付けた場合、前記レーン情報取得工程により取得した前記高速シリアルバスのレーン情報に従って、前記各ジョブの同時実行が可能かどうかを判断するジョブ実行判断工程と、このジョブ実行判断工程により前記各ジョブの同時実行が可能であると判断した場合には、指示があった前記画像出力系のジョブと前記画像入力系のジョブとをそれぞれを実行するジョブ実行工程と、前記ジョブ実行判断工程により前記各ジョブの同時実行が可能でないと判断した場合には、指示があった前記画像出力系のジョブと前記画像入力系のジョブとのいずれか一方の実行を保留するジョブ保留工程と、このジョブ保留工程により保留された前記ジョブの実行が可能かどうかを判断するジョブ実行再判断工程と、このジョブ実行再判断工程により前記各ジョブの実行が可能であると判断した場合には、保留されていた前記ジョブを実行する保留ジョブ実行工程と、を含む。   The invention according to claim 17 is the job execution method according to claim 16, wherein the exclusive control step receives an image output job and an image input job in the job execution reception step, respectively. According to the lane information of the high-speed serial bus acquired by the lane information acquisition step, a job execution determination step for determining whether or not each job can be executed simultaneously, and the job execution determination step enables the simultaneous execution of each job. In the case where it is determined that the image output system job and the image input system job that have been instructed are executed, the job execution determination process enables the simultaneous execution of the jobs. If it is determined that it is not possible, one of the image output job and the image input job for which an instruction has been given. A job hold step for holding the job execution, a job execution redetermination step for determining whether the job held by the job hold step can be executed, and the job execution redetermination step can execute each job. If it is determined that the job is held, a hold job execution step for executing the hold job is included.

また、請求項18にかかる発明は、請求項17記載のジョブ実行方法において、前記ジョブ実行判断工程は、前記画像処理エンジンと前記コントローラとの間の前記高速シリアルバスのレーン情報の組み合わせ毎に、前記画像出力系のジョブと前記画像入力系のジョブとの組み合わせに応じてジョブの排他制御を設定した排他制御テーブルを参照して、前記各ジョブの同時実行が可能かどうかを判断する。   The invention according to claim 18 is the job execution method according to claim 17, wherein the job execution determination step is performed for each combination of lane information of the high-speed serial bus between the image processing engine and the controller. It is determined whether or not each job can be executed simultaneously with reference to an exclusive control table in which exclusive control of the job is set according to the combination of the image output job and the image input job.

また、請求項19にかかる発明は、請求項17記載のジョブ実行方法において、前記ジョブ保留工程は、指示のあったジョブが実行中のジョブより優先順位が高く設定されている場合、実行中のジョブを保留して指示のあったジョブを割り込ませる。   The invention according to claim 19 is the job execution method according to claim 17, wherein the job holding step is executed when the instructed job has a higher priority than the job being executed. Hold the job and interrupt the specified job.

また、請求項20にかかる発明は、請求項18記載のジョブ実行方法において、前記排他制御テーブルは、画像処理内容に応じて可変である。   According to a twentieth aspect of the present invention, in the job execution method according to the eighteenth aspect, the exclusive control table is variable according to image processing contents.

また、請求項21にかかる発明は、請求項17記載のジョブ実行方法において、前記ジョブ実行判断工程は、3つ以上のジョブが実行できるかどうかについては、ジョブ1つ毎に前記高速シリアルバスの帯域をどの程度使うのかを1次元のテーブルとして持ち、それらの合計が100%を超えるかどうか判断する。   The invention according to claim 21 is the job execution method according to claim 17, wherein in the job execution determination step, whether or not three or more jobs can be executed is determined for each job. It has a one-dimensional table indicating how much bandwidth is used, and determines whether or not the total of these tables exceeds 100%.

本発明によれば、高速シリアルバスのリンクのレーン数を参照してジョブの複数同時実行が可能かどうかを判断し、ジョブの処理開始を許可することができるので、システムが誤動作したり、画像が異常になることがないという効果を奏する。   According to the present invention, it is possible to determine whether or not a plurality of jobs can be simultaneously executed by referring to the number of lanes of the high-speed serial bus link, and to permit the start of job processing. There is an effect that does not become abnormal.

以下に添付図面を参照して、この発明にかかる画像処理システム、プログラムおよびジョブ実行方法の最良な実施の形態を詳細に説明する。   Exemplary embodiments of an image processing system, a program, and a job execution method according to the present invention will be explained below in detail with reference to the accompanying drawings.

本発明を実施するための最良の形態について図面を参照して説明する。以下では、PCI Expressの詳細について、[PCI Express規格の概要]〜[PCI Express のアーキテクチャの詳細]の欄で説明し、その後、本実施の形態の画像処理システムについて、[画像処理システム]の欄で説明する。   The best mode for carrying out the present invention will be described with reference to the drawings. In the following, details of PCI Express will be described in the columns [Outline of PCI Express Standard] to [Details of PCI Express Architecture], and then the [Image Processing System] column for the image processing system of the present embodiment. I will explain it.

[PCI Express規格の概要]
まず、本実施の形態は高速シリアルバスの一つであるPCI Express(登録商標)を利用するものであり、本実施の形態の前提として当該PCI Express規格の概要について、非特許文献1の一部抜粋により説明する。ここに、高速シリアルバスとは、1本の伝送路を用いてシリアル(直列)伝送により高速(100Mbps程度以上)にデータをやり取りすることができるインタフェースを意味する。
[Outline of PCI Express standard]
First, this embodiment uses PCI Express (registered trademark), which is one of high-speed serial buses. As an assumption of this embodiment, an outline of the PCI Express standard is a part of Non-Patent Document 1. Explained with excerpts. Here, the high-speed serial bus means an interface capable of exchanging data at high speed (about 100 Mbps or more) by serial (serial) transmission using a single transmission line.

PCI Expressは、PCIの後継規格としてコンピュータ全般に通用する標準拡張バスとして規格化されたバスであり、概略的には、低電圧差動信号伝送、ポイントツーポイントで送受信独立の通信チャネル、パケット化されたスプリットトランザクション、リンク構成の違いによる高いスケーラビリティなどの特徴を持つ。   PCI Express is a standardized expansion bus that can be used for all computers as a successor to PCI. In general, low-voltage differential signal transmission, point-to-point independent communication channels, and packetization Split transactions and high scalability due to differences in link configuration.

図1に既存のPCIシステム、図2にPCI Expressシステムの各々の構成例を示す。既存のPCIシステムにあっては、CPU100やAGPグラフィックス101やメモリ102が接続されたホストブリッジ103に対して、PCI-X(PCIの上位互換規格)デバイス104a,104bがPCI-Xブリッジ105aを介して接続されたり、PCIデバイス104c,104dが接続されたPCIブリッジ105bやPCIバススロット106が接続されたPCIブリッジ107がPCIブリッジ105cを介して接続されたりしたツリー構造(木構造)とされている。   FIG. 1 shows a configuration example of an existing PCI system, and FIG. 2 shows a configuration example of a PCI Express system. In an existing PCI system, PCI-X (PCI upward compatible standard) devices 104a and 104b connect a PCI-X bridge 105a to a host bridge 103 to which a CPU 100, AGP graphics 101, and memory 102 are connected. Or a PCI bridge 105b to which the PCI devices 104c and 104d are connected and a PCI bridge 107 to which the PCI bus slot 106 is connected are connected via the PCI bridge 105c (tree structure). Yes.

これに対して、PCI Expressシステムにあっては、CPU110やメモリ111が接続されたルートコンプレックス112に対して、PCI Expressグラフィックス113がPCI Express114aにより接続され、また、エンドポイント115aやレガシーエンドポイント116aがPCI Express114bにより接続されたスイッチ117aがPCI Express114cにより接続され、さらには、エンドポイント115bやレガシーエンドポイント116bがPCI Express114dにより接続されたスイッチ117bやPCIバススロット118が接続されたPCIブリッジ119がPCI Express114eにより接続されたスイッチ117cがPCI Express114fにより接続されたツリー構造(木構造)とされている。   On the other hand, in the PCI Express system, the PCI Express graphics 113 is connected by the PCI Express 114a to the root complex 112 to which the CPU 110 and the memory 111 are connected, and the endpoint 115a and the legacy endpoint 116a. PCI Express 114b connects the switch 117a to which the PCI Express 114b is connected, and the PCI bridge 119 to which the switch 117b to which the endpoint 115b and the legacy endpoint 116b are connected by the PCI Express 114d and the PCI bus slot 118 are connected. The switch 117c connected by the Express 114e has a tree structure (tree structure) connected by the PCI Express 114f.

実際に想定されるPCI Expressプラットホーム例を図3に示す。図示例は、デスクトップ/モバイルへの適用例を示し、CPU121がCPUホストバス122により接続され、メモリ123が接続されたメモリハブ124(ルートコンプレックスに相当する)に対して、例えば、グラフィックス125がx16のPCI Express126aにより接続され、また、変換機能を有するI/Oハブ127がPCI Express126bにより接続されている。このI/Oハブ127には、例えば、Serial ATA128によりストレージ129が接続され、LPC130によりローカルI/O131が接続され、USB 2.0132やPCIバススロット133が接続されている。さらには、I/Oハブ127には、PCI Express126cによりスイッチ134が接続され、このスイッチ134には、各々、PCI Express126d,126e,126fによりモバイルドック135、ギガビットイーサネット136(イーサネットは登録商標)、アドインカード137が接続されている。   An example of an actually assumed PCI Express platform is shown in FIG. The illustrated example shows an application example to desktop / mobile. For example, graphics 125 is x16 with respect to a memory hub 124 (corresponding to a root complex) to which a CPU 121 is connected by a CPU host bus 122 and a memory 123 is connected. PCI Express 126a and an I / O hub 127 having a conversion function are connected by PCI Express 126b. For example, a storage 129 is connected to the I / O hub 127 by a Serial ATA 128, a local I / O 131 is connected by an LPC 130, and a USB 2.0 132 and a PCI bus slot 133 are connected. Further, a switch 134 is connected to the I / O hub 127 by a PCI Express 126c, and the mobile dock 135, Gigabit Ethernet 136 (Ethernet is a registered trademark), and an add-in are connected to the switch 134 by PCI Express 126d, 126e, and 126f, respectively. A card 137 is connected.

即ち、PCI Expressシステムでは、従来のPCI,PCI-X,AGPといったバスがPCI Expressで置き換わり、既存のPCI/PCI-Xデバイスを接続するためにブリッジが使用される。チップセット間の接続もPCI Express接続となり、IEEE1394,Serial ATA,USB 2.0などの既存のバスはI/OハブによりPCI Expressに接続される。   That is, in the PCI Express system, the conventional PCI, PCI-X, AGP bus is replaced with PCI Express, and a bridge is used to connect an existing PCI / PCI-X device. Connection between chipsets is also PCI Express connection, and existing buses such as IEEE1394, Serial ATA, and USB 2.0 are connected to PCI Express by an I / O hub.

[PCI Expressの構成要素]
A.ポート(Port)/レーン(Lane)/リンク(Link)
図4に物理層の構造を示す。ポートは、物理的には同一半導体内にあり、リンクを形成するトランスミッタ/レシーバの集合で、論理的にはコンポーネント・リンク間を1対1で接続(ポイント・ツー・ポイント)するインタフェースを意味する。転送レートは、例えば片方向2.5Gbpsとされている。レーンは、例えば0.8Vの差動信号ペアのセットで、送信側の信号ペア(2本)、受信側の信号ペア(2本)からなる。リンクは、2つのポートとその間を結ぶレーンの集まりであり、コンポーネント間のデュアルシンプレックス通信バスである。「xNリンク」はN本のレーンから構成され、現在の規格では、N=1,2,4,8,16,32が定義されている。図示例は、x4リンク例である。例えば、図5に示すように、デバイスA,B間を結ぶこのレーン幅Nを可変することにより、スケーラブルなバンド幅を構成することが可能となる。
[Components of PCI Express]
A. Port / Lane / Link
FIG. 4 shows the structure of the physical layer. A port is a set of transmitters / receivers that are physically in the same semiconductor and form a link, and logically means an interface that connects component links in a one-to-one relationship (point-to-point). . The transfer rate is, for example, 2.5 Gbps in one direction. The lane is, for example, a set of 0.8 V differential signal pairs, and includes a transmission-side signal pair (two) and a reception-side signal pair (two). A link is a collection of lanes connecting two ports and the two ports, and is a dual simplex communication bus between components. The “xN link” is composed of N lanes, and N = 1, 2, 4, 8, 16, 32 are defined in the current standard. The illustrated example is an x4 link example. For example, as shown in FIG. 5, by changing the lane width N connecting the devices A and B, a scalable bandwidth can be configured.

B.ルートコンプレックス(Root Complex)
ルートコンプレックス112は、I/O構造の最上位に位置し、CPUやメモリサブシステムをI/Oに接続する。ブロック図などでは、図3に示すように、「メモリハブ」と記述されることが多い。ルートコンプレックス112(又は、124)は、1つ以上のPCI Expressポート(ルートポート)(図2中では、ルートコンプレックス112中の四角で示す)を持ち、各々のポートは独立したI/O階層ドメインを形成する。I/O階層ドメインは、単純なエンドポイントである場合(例えば、図2中のエンドポイント115a側の例)や、多数のスイッチやエンドポイントから形成される場合(例えば、図2中のエンドポイント115bやスイッチ117b,115c側の例)がある。
B. Root Complex
The root complex 112 is located at the highest level of the I / O structure, and connects the CPU and the memory subsystem to the I / O. In a block diagram or the like, as shown in FIG. 3, it is often described as “memory hub”. The root complex 112 (or 124) has one or more PCI Express ports (root ports) (indicated by squares in the root complex 112 in FIG. 2), and each port is an independent I / O hierarchical domain. Form. The I / O hierarchical domain is a simple endpoint (for example, the example of the endpoint 115a side in FIG. 2), or is formed from a large number of switches and endpoints (for example, the endpoint in FIG. 2). 115b and switches 117b and 115c side).

C.エンドポイント(End Point)
エンドポイント115は、タイプ00hのコンフィグレーション空間ヘッダを持つデバイス(具体的には、ブリッジ以外のデバイス)で、レガシーエンドポイントとPCI Expressエンドポイントとに分けられる。両者の大きな違いは、PCI ExpressエンドポイントはBAR(ベースアドレスレジスタ)でI/Oリソースを要求せず、このためI/Oリクエストを要求しない。また、PCI Expressエンドポイントは、ロックリクエストもサポートしていない。
C. End point
The endpoint 115 is a device having a configuration space header of type 00h (specifically, a device other than a bridge), and is divided into a legacy endpoint and a PCI Express endpoint. The major difference between the two is that the PCI Express endpoint does not request I / O resources in the BAR (Base Address Register), and therefore does not request an I / O request. PCI Express endpoints also do not support lock requests.

D.スイッチ(Switch)
スイッチ117(又は、134)は、2つ以上のポートを結合し、ポート間でのパケットルーティングを行う。コンフィグレーションソフトウェアからは、当該スイッチは、図6に示すように、仮想PCI-PCIブリッジ141の集合体として認識される。図中、両矢印はPCI Expressリンク114(又は、126)を示し、142a〜142dはポートを示す。このうち、ポート142aはルートコンプレックスに近い方のアップストリームポートであり、ポート142b〜142dはルートコンプレックスから遠い方のダウンストリームポートである。
D. Switch
The switch 117 (or 134) couples two or more ports and performs packet routing between the ports. From the configuration software, the switch is recognized as a collection of virtual PCI-PCI bridges 141 as shown in FIG. In the figure, double arrows indicate the PCI Express link 114 (or 126), and 142a to 142d indicate ports. Among these, the port 142a is an upstream port closer to the root complex, and the ports 142b to 142d are downstream ports farther from the root complex.

E.PCI Express114e−PCIブリッジ119
PCI ExpressからPCI/PCI-Xへの接続を提供する。これにより、既存のPCI/PCI-XデバイスをPCI Expressシステム上で使用することができる。
E. PCI Express 114e-PCI bridge 119
Provides connection from PCI Express to PCI / PCI-X. Thereby, an existing PCI / PCI-X device can be used on the PCI Express system.

[階層アーキテクチャ]
従来のPCIのアーキテクチャは、図7−1に示すように、プロトコルとシグナリングが密接に関連する構造であり階層という考え方はなかったが、PCI Expressでは、図7−2に示すように、一般的な通信プロトコルやInfiniBandのように、独立した階層構造とされ、各層に分けて仕様が定義されている。即ち、最上位のソフトウェア151、最下位の機構(メカニカル)部152間に、トランザクション層153、データリンク層154、物理層155を持つ構造とされている。これにより、各層のモジュール性が確保され、スケーラビリティを持たせることやモジュールの再利用が可能となる。例えば、新たな信号コーディング方式や伝送媒体を採用する場合、物理層を変更するだけでデータリンク層やトランザクション層は変更せずに対応できる。
[Hierarchical architecture]
As shown in FIG. 7A, the conventional PCI architecture has a structure in which protocols and signaling are closely related and there is no concept of hierarchy. In PCI Express, as shown in FIG. Like the standard communication protocol and InfiniBand, it has an independent hierarchical structure, and specifications are defined for each layer. In other words, a transaction layer 153, a data link layer 154, and a physical layer 155 are provided between the uppermost software 151 and the lowermost mechanism (mechanical) unit 152. Thereby, the modularity of each layer is ensured, and it becomes possible to provide scalability and reuse the module. For example, when adopting a new signal coding method or transmission medium, it is possible to cope with only changing the physical layer without changing the data link layer or the transaction layer.

PCI Expressのアーキテクチャの中心となるのは、トランザクション層153、データリンク層154、物理層155であり、各々図8を参照して説明する以下のような役割を持つ。   The core of the PCI Express architecture is a transaction layer 153, a data link layer 154, and a physical layer 155, each having the following roles described with reference to FIG.

A.トランザクション層153
トランザクション層153は、最上位に位置し、トランザクションレイヤパケット(TLP)の組み立て、分解機能を持つ。トランザクションレイヤパケット(TLP)は、リード/ライト、各種イベントといったトランザクションの伝達に用いられる。また、トランザクション層153は、トランザクションレイヤパケット(TLP)のためのクレジットを用いたフロー制御を行う。各層153〜155におけるトランザクションレイヤパケット(TLP)の概要を図9に示す(詳細は、後述する)。
A. Transaction layer 153
The transaction layer 153 is located at the highest level and has a function of assembling and disassembling a transaction layer packet (TLP). The transaction layer packet (TLP) is used for transmission of transactions such as read / write and various events. The transaction layer 153 performs flow control using credits for transaction layer packets (TLP). An outline of a transaction layer packet (TLP) in each of the layers 153 to 155 is shown in FIG. 9 (details will be described later).

B.データリンク層154
データリンク層154の主な役割は、エラー検出/訂正(再送)によりトランザクションレイヤパケット(TLP)のデータ完全性を保証することと、リンク管理である。データリンク層154間では、リンク管理やフロー制御のためのパケットのやり取りを行う。このパケットは、トランザクションレイヤパケット(TLP)と区別するために、データリンクレイヤパケット(DLLP)と呼ばれる。
B. Data link layer 154
The main role of the data link layer 154 is to guarantee data integrity of the transaction layer packet (TLP) by error detection / correction (retransmission) and link management. Packets for link management and flow control are exchanged between the data link layers 154. This packet is called a data link layer packet (DLLP) to distinguish it from a transaction layer packet (TLP).

C.物理層155
物理層155は、ドライバ、入力バッファ、パラレル−シリアル/シリアル−パラレル変換器、PLL、インピーダンス整合回路といったインタフェース動作に必要な回路を含んでいる。また、論理的な機能としてインタフェースの初期化・保守の機能を持つ。物理層155は、データリンク層154/トランザクション層153を実際のリンクで使用される信号技術から独立させる役目も持っている。
C. Physical layer 155
The physical layer 155 includes circuits necessary for interface operations such as a driver, an input buffer, a parallel-serial / serial-parallel converter, a PLL, and an impedance matching circuit. It also has interface initialization / maintenance functions as logical functions. The physical layer 155 also serves to make the data link layer 154 / transaction layer 153 independent of the signaling technology used in the actual link.

なお、PCI Expressのハードウェア構成上、エンベデッド・クロックという技術を採用しており、クロック信号はなく、クロックのタイミングはデータ信号中に埋め込まれており、受信側でデータ信号のクロス・ポイントを基にクロックを抽出する方式とされている。   The PCI Express hardware configuration employs a technology called embedded clock, there is no clock signal, the clock timing is embedded in the data signal, and the receiving side is based on the cross-point of the data signal. The system extracts the clock.

[コンフィグレーション空間]
PCI Expressは、従来のPCIと同様にコンフィグレーション空間を持つが、その大きさは従来のPCIが256バイトであるのに対して、図10に示すように、4096バイトへと拡張されている。これにより、多数のデバイス固有レジスタセットを必要とするデバイス(ホストブリッジなど)に対しても、将来的に十分な空間が確保されている。PCI Expressでは、コンフィグレーション空間へのアクセスは、フラットなメモリ空間へのアクセス(コンフィグレーションリード/ライト)で行われ、バス/デバイス/機能/レジスタ番号はメモリアドレスにマップされている。
[Configuration space]
PCI Express has a configuration space like conventional PCI, but its size is expanded to 4096 bytes as shown in FIG. 10, whereas conventional PCI has 256 bytes. As a result, sufficient space is secured in the future even for devices (such as host bridges) that require a large number of device-specific register sets. In PCI Express, the configuration space is accessed by accessing a flat memory space (configuration read / write), and the bus / device / function / register number is mapped to a memory address.

当該空間の先頭256バイトは、PCIコンフィグレーション空間として、BIOSや従来のOSからI/Oポートを使用した方法でもアクセスできる。従来のアクセスをPCI Expressでのアクセスに変換する機能は、ホストブリッジ上に実装される。00hから3FhまではPCI2.3互換のコンフィグレーションヘッダとなっている。これにより、PCI Expressで拡張された機能以外であれば、従来のOSやソフトウェアをそのまま使用することができる。即ち、PCI Expressにおけるソフトウェア層は、既存のPCIと互換性を保ったロード・ストア・アーキテクチャ(プロセッサが直接I/Oレジスタをアクセスする方式)を継承している。しかし、PCI Expressで拡張された機能(例えば、同期転送やRAS(Reliability,Availability and Serviceability)などの機能)を使用するには、4KバイトのPCI Express拡張空間にアクセスできるようにする必要がある。   The first 256 bytes of the space can be accessed as a PCI configuration space by a method using an I / O port from a BIOS or a conventional OS. The function of converting the conventional access to the access by PCI Express is implemented on the host bridge. From 00h to 3Fh, it is a PCI2.3 compatible configuration header. As a result, a conventional OS and software can be used as they are except for functions extended by PCI Express. That is, the software layer in PCI Express inherits a load / store architecture (a method in which a processor directly accesses an I / O register) that is compatible with the existing PCI. However, in order to use functions extended by PCI Express (for example, functions such as synchronous transfer and RAS (Reliability, Availability and Serviceability)), it is necessary to make it possible to access a 4 Kbyte PCI Express expansion space.

なお、PCI Expressとしては様々なフォームファクタ(形状)が考えられるが、具体化している例としては、アドインカード、プラグインカード(Express Card)、Mini PCI Expressなどがある。   Various form factors (shapes) are conceivable as PCI Express. Examples of specific examples include add-in cards, plug-in cards (Express Cards), and Mini PCI Express.

[PCI Express のアーキテクチャの詳細]
PCI Express のアーキテクチャの中心となっているトランザクション層153、データリンク層154、物理層155について、各々詳細に説明する。
[PCI Express architecture details]
The transaction layer 153, data link layer 154, and physical layer 155, which are the core of the PCI Express architecture, will be described in detail.

A.トランザクション層153
トランザクション層153の主な役割は、前述したように、上位のソフトウェア層151と下位のデータリンク層154との間でトランザクションレイヤパケット(TLP)の組み立てと分解を行うことである。
A. Transaction layer 153
The main role of the transaction layer 153 is to assemble and disassemble transaction layer packets (TLP) between the upper software layer 151 and the lower data link layer 154 as described above.

a.アドレス空間とトランザクションタイプ
PCI Expressでは、従来のPCIでサポートされていたメモリ空間(メモリ空間とのデータ転送用)、I/O空間(I/O空間とのデータ転送用)、コンフィグレーション空間(デバイスのコンフィグレーションとセットアップ用)に加えて、メッセージ空間(PCI Expressデバイス間のインバンドでのイベント通知や一般的なメッセージ送信(交換)用…割り込み要求や確認は、メッセージを「仮想ワイヤ」として使用することにより伝達される)が追加され、4つのアドレス空間が定義されている。各々の空間に対してトランザクションタイプが定義されている(メモリ空間、I/O空間、コンフィグレーション空間は、リード/ライト、メッセージ空間は基本(ベンダ定義含む))。
a. Address space and transaction type
In PCI Express, memory space (for data transfer with memory space), I / O space (for data transfer with I / O space), and configuration space (device configuration and setup) supported by conventional PCI In addition to message space (in-band event notification between PCI Express devices and general message transmission (exchange) ... Interrupt requests and confirmations are communicated by using the message as a "virtual wire" And four address spaces are defined. Transaction types are defined for each space (memory space, I / O space, configuration space is read / write, and message space is basic (including vendor definition)).

b.トランザクションレイヤパケット(TLP)
PCI Expressは、パケット単位で通信を行う。図9に示したトランザクションレイヤパケット(TLP)のフォーマットにおいて、ヘッダのヘッダ長は3DW(DWはダブルワードの略;合計12バイト)又は4DW(16バイト)で、トランザクションレイヤパケット(TLP)のフォーマット(ヘッダ長とペイロードの有無)、トランザクションタイプ、トラフィッククラス(TC)、アトリビュートやペイロード長などの情報が含まれる。パケット内の最大ペイロード長は1024DW(4096バイト)である。
b. Transaction layer packet (TLP)
PCI Express performs communication in units of packets. In the transaction layer packet (TLP) format shown in FIG. 9, the header length of the header is 3DW (DW is an abbreviation of double word; total 12 bytes) or 4DW (16 bytes), and the transaction layer packet (TLP) format ( Information such as header length and presence / absence of payload), transaction type, traffic class (TC), attribute, and payload length are included. The maximum payload length in the packet is 1024 DW (4096 bytes).

ECRCは、エンドツーエンドのデータ完全性を保証するためのもので、トランザクションレイヤパケット(TLP)部分の32ビットCRCである。これは、スイッチ内部などでトランザクションレイヤパケット(TLP)にエラーが発生した場合、LCRC(リンクCRC)ではエラーを検出できないためである(エラーとなったTLPでLCRCが再計算されるため)。   ECRC is an end-to-end data integrity guarantee and is a 32-bit CRC of the transaction layer packet (TLP) portion. This is because when an error occurs in the transaction layer packet (TLP) inside the switch or the like, the LCRC (link CRC) cannot detect the error (because the LCRC is recalculated with the TLP in error).

リクエストは、完了パケットが不要なものと必要なものとがある。   Some requests do not require a completion packet, and some requests.

c.トラフィッククラス(TC)と仮想チャネル(VC)
上位のソフトウェアは、トラフィッククラス(TC)を使用することによりトラフィックの差別化(優先度をつける)を行うことができる。例えば、映像データをネットワークのデータよりも優先して転送する、といったことが可能となる。トラフィッククラス(TC)はTC0からTC7まで8つある。
c. Traffic class (TC) and virtual channel (VC)
Upper software can differentiate (prioritize) traffic by using a traffic class (TC). For example, video data can be transferred with priority over network data. There are eight traffic classes (TC) from TC0 to TC7.

仮想チャネル(VC:Vertual Channel)は、各々独立した仮想通信バス(同一のリンクを共用する複数の独立したデータ・フロー・バッファを使用するメカニズム)で、各々がリソース(バッファやキュー)を持ち、図11に示すように、独立したフロー制御を行う。これにより、1つの仮想チャネルのバッファが満杯の状態(full)になっても、他の仮想チャネルの転送を行うことができる。つまり、物理的には1つのリンクを仮想的な複数のチャネルに分けることで、有効に使用することができる。例えば、図11中に示すように、スイッチを経由してルートのリンクが複数のデバイスに分かれる場合、各デバイスのトラフィックの優先度を制御することができる。VC0は必須で、コストパフォーマンスのトレードオフに応じてその他の仮想チャネル(VC1〜VC7)が実装される。図11中の実線矢印は、デフォルト仮想チャネル(VC0)を示し、破線矢印はその他の仮想チャネル(VC1〜VC7)を示している。   A virtual channel (VC) is an independent virtual communication bus (a mechanism that uses a plurality of independent data flow buffers sharing the same link), each having resources (buffers and queues) As shown in FIG. 11, independent flow control is performed. Thereby, even if the buffer of one virtual channel becomes full (full), the transfer of another virtual channel can be performed. In other words, it can be used effectively by physically dividing one link into a plurality of virtual channels. For example, as shown in FIG. 11, when a route link is divided into a plurality of devices via a switch, the priority of traffic of each device can be controlled. VC0 is indispensable, and other virtual channels (VC1 to VC7) are mounted in accordance with the cost performance trade-off. The solid line arrow in FIG. 11 indicates the default virtual channel (VC0), and the broken line arrow indicates the other virtual channels (VC1 to VC7).

トランザクション層内では、トラフィッククラス(TC)が仮想チャネル(VC)にマッピングされる。1つの仮想チャネル(VC)に対して1つ又は複数のトラフィッククラス(TC)をマッピングできる(仮想チャネル(VC)の数が少ない場合)。単純な例では、各トラフィッククラス(TC)から各仮想チャネル(VC)に1対1、全てのトラフィッククラス(TC)を仮想チャネルVC0にマッピングする、といったことが考えられる。TC0−VC0のマッピングは、必須/固定で、それ以外のマッピングは上位のソフトウェアから制御される。ソフトウェアはトラフィッククラス(TC)を利用することで、トランザクションの優先度を制御することが可能となる。   Within the transaction layer, a traffic class (TC) is mapped to a virtual channel (VC). One or more traffic classes (TC) can be mapped to one virtual channel (VC) (when the number of virtual channels (VC) is small). In a simple example, it can be considered that each traffic class (TC) is mapped to each virtual channel (VC) on a one-to-one basis, and all traffic classes (TC) are mapped to the virtual channel VC0. The mapping of TC0-VC0 is essential / fixed, and the other mappings are controlled from the upper software. The software can control the priority of the transaction by using the traffic class (TC).

d.フロー制御
受信バッファのオーバーフローを避け、伝送順序を確立するためにフロー制御(FC:Flow Control)が行われる。フロー制御は、リンク間のポイントツーポイントで行われ、エンドツーエンドではない。従って、フロー制御により最終的な相手(コンプリータ)にパケットが届いたことを確認することはできない。
d. Flow control Flow control (FC) is performed in order to avoid overflow of the reception buffer and establish the transmission order. Flow control is done point-to-point between links, not end-to-end. Therefore, it cannot be confirmed that the packet has reached the final partner (completer) by flow control.

PCI Expressのフロー制御は、クレジット・ベースで行われる(データ転送を始める前に、受け取り側のバッファの空き状況を確認し、オーバーフロー、アンダフローが発生しないメカニズム)。即ち、受信側はリンク初期化時にバッファ容量(クレジット値)を送信側に通知し、送信側はクレジット値と送信するパケットの長さとを比較し、一定の残りがある場合のみパケットを送信する。このクレジットには6種類ある。   PCI Express flow control is performed on a credit basis (mechanism to check the buffer availability on the receiving side before starting data transfer and prevent overflow and underflow). That is, the receiving side notifies the transmitting side of the buffer capacity (credit value) at the time of link initialization, and the transmitting side compares the credit value with the length of the packet to be transmitted, and transmits the packet only when there is a certain remaining. There are six types of credits.

フロー制御の情報交換はデータリンク層のデータリンクレイヤパケット(DLLP)を使用して行われる。フロー制御はトランザクションレイヤパケット(TLP)のみに適用され、データリンクレイヤパケット(DLLP)には適用されない(DLLPは常時送受信可能)。   Flow control information exchange is performed using data link layer packets (DLLP) in the data link layer. The flow control is applied only to the transaction layer packet (TLP) and not to the data link layer packet (DLLP) (DLLP can always be transmitted / received).

B.データリンク層154
データリンク層154の主な役割は、前述したように、リンク上の2つのコンポーネント間での信頼性の高いトランザクションレイヤパケット(TLP)交換機能を提供することである。
B. Data link layer 154
The main role of the data link layer 154 is to provide a reliable transaction layer packet (TLP) exchange function between two components on the link, as described above.

a.トランザクションレイヤパケット(TLP)の扱い
トランザクション層153から受け取ったトランザクションレイヤパケット(TLP)に対しては、先頭に2バイトのシーケンス番号、末尾に4バイトのリンクCRC(LCRC)を付加して、物理層155に渡す(図9参照)。トランザクションレイヤパケット(TLP)は、リトライバッファに保管され、相手から受信確認(ACK)が届くまで再送される。トランザクションレイヤパケット(TLP)の送信に失敗が続いた場合は、リンク異常であると判断して物理層155に対してリンクの再トレーニングを要求する。リンクのトレーニングが失敗した場合、データリンク層154の状態はインアクティブに遷移する。
a. Handling of transaction layer packet (TLP) For the transaction layer packet (TLP) received from the transaction layer 153, a 2-byte sequence number at the beginning and a 4-byte link CRC (LCRC) at the end are added to the physical layer. To 155 (see FIG. 9). The transaction layer packet (TLP) is stored in the retry buffer and retransmitted until a reception confirmation (ACK) is received from the partner. When the transmission of the transaction layer packet (TLP) continues to fail, it is determined that the link is abnormal, and the physical layer 155 is requested to retrain the link. If link training fails, the state of the data link layer 154 transitions to inactive.

物理層155から受け取ったトランザクションレイヤパケット(TLP)は、シーケンス番号とリンクCRC(LCRC)が検査され、正常であればトランザクション層153に渡され、エラーがあった場合は再送を要求する。   The transaction layer packet (TLP) received from the physical layer 155 is inspected for the sequence number and the link CRC (LCRC). If normal, the transaction layer packet (TLP) is passed to the transaction layer 153. If there is an error, a retransmission is requested.

b.データリンクレイヤパケット(DLLP)
トランザクションレイヤパケット(TLP)は、物理層から送信されるときに自動的に図12に示すようなデータリンクレイヤパケット(DLLP)に分割されて各レーンに送信される。データリンク層154が生成するパケットは、データリンクレイヤパケット(DLLP)と呼ばれ、データリンク層154間でやり取りされる。データリンクレイヤパケット(DLLP)には、
・Ack/Nak:TLPの受信確認、リトライ(再送)
・InitFC1/InitFC2/UpdateFC:フロー制御の初期化とアップデート
・電源管理のためのDLLP
なる種類がある。
b. Data link layer packet (DLLP)
The transaction layer packet (TLP) is automatically divided into data link layer packets (DLLP) as shown in FIG. 12 and transmitted to each lane when transmitted from the physical layer. A packet generated by the data link layer 154 is called a data link layer packet (DLLP), and is exchanged between the data link layers 154. Data link layer packet (DLLP)
-Ack / Nak: TLP reception confirmation, retry (retransmission)
-InitFC1 / InitFC2 / UpdateFC: Flow control initialization and update-DLLLP for power management
There are different types.

図12に示すように、データリンクレイヤパケット(DLLP)の長さは6バイトで、種類を示すDLLPタイプ(1バイト)、DLLPの種類で固有の情報(3バイト)、CRC(2バイト)から構成される。   As shown in FIG. 12, the length of the data link layer packet (DLLP) is 6 bytes. From the DLLP type (1 byte) indicating the type, the information specific to the type of DLLP (3 bytes), and CRC (2 bytes) Composed.

C.物理層−論理サブブロック156
図8中に示す物理層155の論理サブブロック156での主な役割は、データリンク層154から受け取ったパケットを電気サブブロック157で送信できる形式に変換することである。また、物理層155を制御/管理する機能も有する。
C. Physical layer-logical sub-block 156
The main role of the physical layer 155 in the logical sub-block 156 shown in FIG. 8 is to convert the packet received from the data link layer 154 into a format that can be transmitted by the electrical sub-block 157. It also has a function of controlling / managing the physical layer 155.

a.データ符号化とパラレル−シリアル変換
PCI Expressは、連続した“0”や“1”が続かないように(長い期間、クロス・ポイントが存在しない状態が続かないようにするため)、データ符号化に8B/10B変換を用いる。変換されたデータは、図13中に示すように、シリアル変換され、LSBからレーン上に送信される。ここに、レーンが複数ある場合は(図13はx4リンクの場合を例示している)、符号化の前にデータがバイト単位で各レーンに割り振られる。この場合、一見パラレル・バスのようにみえるが、レーン毎に独立した転送を行うので、パラレル・バスで問題となるスキューが大幅に緩和される。
a. Data encoding and parallel-serial conversion
PCI Express uses 8B / 10B conversion for data encoding so that consecutive “0” s and “1” s do not continue (in order not to maintain a state where there is no cross point for a long period of time). The converted data is serial-converted and transmitted from the LSB onto the lane as shown in FIG. Here, when there are a plurality of lanes (FIG. 13 illustrates the case of x4 link), data is allocated to each lane in units of bytes before encoding. In this case, it looks like a parallel bus at first glance, but since the transfer is performed independently for each lane, the skew which is a problem with the parallel bus is greatly reduced.

b.電源管理とリンクステート
リンクの消費電力を低く抑えるために、図14に示すように、L0/L0s/L1/L2というリンクステートが定義されている。
b. Power Management and Link State In order to keep the power consumption of the link low, a link state of L0 / L0s / L1 / L2 is defined as shown in FIG.

L0が通常モードで、L0sからL2へと低消費電力となるが、L0への復帰にも時間がかかるようになる。図15に示すように、ソフトウェアによる電源管理に加えて、アクティブステート電源管理を積極的に行うことにより、消費電力を極力小さくすることが可能となる。   L0 is a normal mode, and power consumption is reduced from L0s to L2, but it takes time to return to L0. As shown in FIG. 15, by actively performing active state power management in addition to software power management, it is possible to reduce power consumption as much as possible.

D.物理層−電気サブブロック157
物理層155の電気サブブロック157での主な役割は、論理サブブロック156でシリアル化されたデータをレーン上に送信することと、レーン上のデータを受信して論理サブブロック156に渡すことである。
D. Physical layer—Electric sub-block 157
The main role of the physical layer 155 in the electrical sub-block 157 is to transmit the data serialized in the logical sub-block 156 onto the lane, and to receive the data on the lane and pass it to the logical sub-block 156. is there.

a.ACカップリング
リンクの送信側では、ACカップリング用のコンデンサが実装される。これにより、送信側と受信側のDCコモンモード電圧が同一である必要がなくなる。このため、送信側と受信側で異なる設計、半導体プロセス、電源電圧を使用することが可能となる。
a. AC coupling On the transmission side of the link, a capacitor for AC coupling is mounted. This eliminates the need for the DC common mode voltage on the transmission side and the reception side to be the same. For this reason, it is possible to use different designs, semiconductor processes, and power supply voltages on the transmission side and the reception side.

b.デエンファシス
PCI Expressでは、前述したように、8B/10Bエンコーディングによってできるだけ連続した“0”や“1”が続かないように処理されるが、連続した“0”や“1”が続くこともある(最大5回)。この場合、送信側はデエンファシス転送を行わなければならないことが規定されている。同一極性のビットが連続する場合は、2つ目のビットからは差動電圧レベル(振幅)を3.5±0.5dB落とすことで、受信側で受け取る信号のノイズ・マージンを稼ぐ必要がある。これを、デエンファシスという。伝送路の周波数依存性減衰のため、変化するビットの場合は高周波成分が多く、減衰により受信側の波形が小さくなるが、変化しないビットの場合は高周波成分が少なく、相対的に受信側の波形が大きくなる。このため、受信側での波形を一定とするためにデエンファシスを行う。
b. De-emphasis
In PCI Express, as described above, processing is performed so that continuous “0” and “1” do not continue as much as possible by 8B / 10B encoding, but continuous “0” and “1” may continue (maximum). 5 times). In this case, it is specified that the transmission side must perform de-emphasis transfer. When bits of the same polarity are consecutive, it is necessary to increase the noise margin of the signal received on the receiving side by dropping the differential voltage level (amplitude) from the second bit by 3.5 ± 0.5 dB. . This is called de-emphasis. Due to the frequency-dependent attenuation of the transmission line, there are many high-frequency components in the case of changing bits, and the waveform on the receiving side becomes small due to attenuation. Becomes larger. For this reason, de-emphasis is performed in order to make the waveform on the receiving side constant.

[画像処理システム]
本実施の形態のデジタル複写機やMFP等の画像処理システムは、その内部インタフェースに前述したようなPCI Express規格の高速シリアルバスを利用するようにしたものである。
[Image processing system]
The image processing system such as a digital copying machine or MFP according to the present embodiment uses a PCI Express standard high-speed serial bus as described above for its internal interface.

図16は、本実施の形態の画像処理システム1の構成例を示す概略ブロック図である。本実施の形態の画像処理システム1は、例えばMFP等の機器に適用されるもので、その構成要素として、シリアル通信制御部2と画像入力部3と画像出力部4と画像処理部5とプリンタコントローラ6と記憶部9とを備える。   FIG. 16 is a schematic block diagram illustrating a configuration example of the image processing system 1 according to the present embodiment. An image processing system 1 according to the present embodiment is applied to a device such as an MFP, and includes, as its constituent elements, a serial communication control unit 2, an image input unit 3, an image output unit 4, an image processing unit 5, and a printer. A controller 6 and a storage unit 9 are provided.

シリアル通信制御部2は、インストールされているプログラム(ソフトウェア)に従いシリアル通信システムの制御を受け持つCPU(Central Processing Unit)等を含み、経路制御や経路判断等の処理を行うデバイス部分を含む。特に、PCI Express規格においては、ルートコンプレックスに相当する。   The serial communication control unit 2 includes a CPU (Central Processing Unit) that controls the serial communication system according to an installed program (software), and includes a device part that performs processing such as path control and path determination. In particular, the PCI Express standard corresponds to a root complex.

画像入力部3とは、原稿画像等に基づく画像データを当該システム内に取り込むためのデバイスやユニット部分を示し、例えば、原稿画像を光電的に読み取って画像データを取得するスキャナエンジン等により構成されている。   The image input unit 3 is a device or unit for capturing image data based on a document image or the like into the system, and includes, for example, a scanner engine that photoelectrically reads a document image and acquires image data. ing.

画像出力部4とは、画像データを紙などに印刷出力するデバイスやユニット部分を示し、例えば、電子写真方式のプロッタ(プリンタ)エンジン等により構成されている。なお、画像出力部4の印刷方式は、電子写真方式のほか、インクジェット方式、昇華型熱転写方式、銀塩写真方式、直接感熱記録方式、溶融型熱転写方式など、様々な方式を用いることができる。   The image output unit 4 is a device or unit that prints out image data on paper or the like, and includes, for example, an electrophotographic plotter (printer) engine. In addition to the electrophotographic method, the image output unit 4 can use various methods such as an ink jet method, a sublimation type thermal transfer method, a silver salt photographic method, a direct thermal recording method, and a melt type thermal transfer method.

画像処理部5とは、画像データに対して、γ補正、色変換、シェーディング補正、階調補正、地肌補正、拡大・縮小、回転、圧縮・伸長、等の何らかの画像処理を施すデバイスやユニット部分を示し、例えば、各種画像補正器、色変換器、変倍器、回転器、圧縮/伸長器等を含む構成とされている。   The image processing unit 5 is a device or unit part that performs some image processing such as γ correction, color conversion, shading correction, gradation correction, background correction, enlargement / reduction, rotation, compression / expansion, etc. on image data For example, various image correctors, color converters, zoomers, rotators, compressors / decompressors, and the like are included.

プリンタコントローラ6とは、インストールされているプログラム(ソフトウェア)に従い当該システム全体の制御を受け持つCPU等を含み、プリンタ動作やMFP動作を制御するデバイスやユニット部分を示す。   The printer controller 6 includes a CPU and the like that control the entire system according to an installed program (software), and indicates a device or unit portion that controls the printer operation or MFP operation.

記憶部9とは、画像データを保存するメモリやHDD(Hard Disk Drive)等を含むデバイスやユニット部分である。   The storage unit 9 is a device or unit including a memory for storing image data, an HDD (Hard Disk Drive), or the like.

このような画像処理システム(MFP)1の構成要素に関して、本実施の形態では、例えば画像処理部5は画像入力部3と画像出力部4とが一体化された構成とされ、かつ、プリンタコントローラ6がシリアル通信制御部2を有し記憶部9を一体に有する構成とされ、かつ、画像処理部5とプリンタコントローラ6とのデバイス間が上述したようなPCI Express規格による高速シリアルバス7により接続されている(従って、画像処理部5、プリンタコントローラ6はポートを有する)。   With regard to the components of such an image processing system (MFP) 1, in the present embodiment, for example, the image processing unit 5 has a configuration in which the image input unit 3 and the image output unit 4 are integrated, and a printer controller. 6 includes a serial communication control unit 2 and a storage unit 9, and the devices of the image processing unit 5 and the printer controller 6 are connected by the high-speed serial bus 7 according to the PCI Express standard as described above. (Accordingly, the image processing unit 5 and the printer controller 6 have ports).

このような構成において、シリアル通信制御部2による制御の下、画像入力部3から取り込まれた画像データは必要に応じて画像処理部5による画像処理を経た後、高速シリアルバス7を介してプリンタコントローラ6に転送され、プリンタコントローラ6内の記憶部9に一旦保存される。その後、プリンタコントローラ6の記憶部9に保存された画像データは高速シリアルバス7を介して画像処理部5に取り込まれ必要に応じて画像処理を経た後、画像出力部4に転送され、印刷出力等がなされる。なお、図16中、点線はMFP制御データの流れを示す(後述する図でも同様)。   In such a configuration, the image data captured from the image input unit 3 under the control of the serial communication control unit 2 is subjected to image processing by the image processing unit 5 as necessary, and then via the high-speed serial bus 7. The data is transferred to the controller 6 and temporarily stored in the storage unit 9 in the printer controller 6. Thereafter, the image data stored in the storage unit 9 of the printer controller 6 is taken into the image processing unit 5 via the high-speed serial bus 7 and subjected to image processing as necessary, and then transferred to the image output unit 4 for print output. Etc. are made. In FIG. 16, dotted lines indicate the flow of MFP control data (the same applies to the drawings described later).

本実施の形態の場合、MFP等の画像処理システム1の内部でPCI Express規格による高速シリアルバス7により画像処理部5とプリンタコントローラ6とを接続しているので、画像処理部5側とプリンタコントローラ6側とで各々のデバイスの電気系を別個の基板上に実装して構成することができ、高速性を損なうことなく、設計上の自由度を大幅に拡張することができ、基板面積低減によるコストダウンも図ることができる。また、プリンタコントローラ6がシリアル通信制御部2を有しているので、プリンタコントローラ6が有するCPUリソースを兼用することができる。   In the case of the present embodiment, the image processing unit 5 and the printer controller 6 are connected to each other inside the image processing system 1 such as an MFP because the image processing unit 5 and the printer controller 6 are connected by the high-speed serial bus 7 according to the PCI Express standard. The electrical system of each device can be mounted on a separate board on the 6th side, and the degree of freedom in design can be greatly expanded without sacrificing high-speed performance. Cost can also be reduced. In addition, since the printer controller 6 has the serial communication control unit 2, the CPU resources of the printer controller 6 can be shared.

なお、図16に示した本実施の形態は、一例を示すに過ぎず、例えば、以下に示すような各種態様により構成することができる。   Note that the present embodiment shown in FIG. 16 is merely an example, and can be configured in various aspects as shown below, for example.

図17に示す構成例は、シリアル通信制御部2を画像処理部5内に持たせたものである。画像処理部5がシリアル通信制御部2を有しているので、画像処理部5が有するCPUリソースを兼用することができる。よって、プリンタコントローラ6を後付けするようなアプリケーション拡張、例えば、コピー機能からMFP機能への拡張、が容易に可能となる。   In the configuration example illustrated in FIG. 17, the serial communication control unit 2 is provided in the image processing unit 5. Since the image processing unit 5 has the serial communication control unit 2, the CPU resource of the image processing unit 5 can be shared. Therefore, application expansion such as retrofitting the printer controller 6, for example, expansion from the copy function to the MFP function can be easily performed.

ここで、画像処理システム(MFP)1における主なジョブにおける画像データの流れについて図18を参照して説明する。   Here, the flow of image data in a main job in the image processing system (MFP) 1 will be described with reference to FIG.

図18−1は、画像入力部3による画像読み取りジョブにおける画像データの流れを示している。この画像読み取りジョブは、原稿を画像入力部3により読取走査した後、記憶部9へ蓄積したり、ネットワーク(図示せず)経由で配信する入力系のジョブである。なお、原稿を画像入力部3により読取走査した直後にすぐネットワーク経由で配信する場合には、記憶部9には蓄積しない。   FIG. 18A shows the flow of image data in an image reading job by the image input unit 3. This image reading job is an input job in which a document is read and scanned by the image input unit 3 and then stored in the storage unit 9 or distributed via a network (not shown). If the document is distributed via the network immediately after being read and scanned by the image input unit 3, the document is not stored in the storage unit 9.

図18−2は、コピー蓄積ジョブにおける画像データの流れを示している。このコピー蓄積ジョブは、原稿を画像入力部3により読取走査した後、画像処理部5にてコピー画像に変換して記憶部9へ蓄積する入力系のジョブである。   FIG. 18-2 shows the flow of image data in a copy accumulation job. This copy accumulation job is an input-type job in which a document is read and scanned by the image input unit 3, converted into a copy image by the image processing unit 5, and accumulated in the storage unit 9.

図18−3は、コピー印刷ジョブにおける画像データの流れを示している。このコピー印刷ジョブは、記憶部9に蓄積されているコピー画像を画像出力部4に転送し、印刷出力を行う出力系のジョブである。   FIG. 18C shows the flow of image data in a copy print job. This copy print job is an output-type job that transfers a copy image stored in the storage unit 9 to the image output unit 4 and performs printout.

図18−4は、プリント印刷ジョブにおける画像データの流れを示している。このプリント印刷ジョブは、記憶部9にスプールされている画像を画像出力部4に転送し、印刷出力を行う出力系のジョブである。なお、ネットワーク経由で画像を受信した後、記憶部9にスプールせずに、そのまま受信した画像を画像出力部4に転送して印刷出力を行うものであっても良い。   FIG. 18D shows the flow of image data in a print print job. This print print job is an output-type job that transfers an image spooled in the storage unit 9 to the image output unit 4 and performs printout. In addition, after receiving an image via a network, the received image may be transferred to the image output unit 4 and printed out without being spooled in the storage unit 9.

ところで、本実施の形態の画像処理システム(MFP)1においては、PCI Express規格による高速シリアルバス7により画像処理部5(画像入力部3及び画像出力部4)とプリンタコントローラ6とを接続しているので、上述したような入力系や出力系のジョブの複数同時実行が可能になっている。   By the way, in the image processing system (MFP) 1 of the present embodiment, the image processing unit 5 (the image input unit 3 and the image output unit 4) and the printer controller 6 are connected by a high-speed serial bus 7 according to the PCI Express standard. Therefore, it is possible to simultaneously execute a plurality of input and output jobs as described above.

しかしながら、画像処理部5及びプリンタコントローラ6のポートは、出力系と入力系とで共通であることから、ジョブの組み合わせ及びリンクのレーン数によっては競合が生じてPCI Express規格による高速シリアルバス7のリソースが100%を超えてしまい、処理能力が低下するという問題がある。このようにリソースが100%を超えてしまう場合には、画像処理システム(MFP)1の誤動作を招いたり、または、画像に異常を生じたりする。   However, since the ports of the image processing unit 5 and the printer controller 6 are common to the output system and the input system, contention occurs depending on the combination of jobs and the number of link lanes, and the high-speed serial bus 7 according to the PCI Express standard. There is a problem that the resource exceeds 100% and the processing capacity is reduced. Thus, when the resource exceeds 100%, the image processing system (MFP) 1 may malfunction or an image may be abnormal.

そこで、本実施の形態の画像処理システム(MFP)1のプリンタコントローラ6においては、PCI Express規格による高速シリアルバス7のリンクのレーン数及びジョブの組み合わせを参照して、各種ジョブの複数同時実行が可能かどうか判断し、各種ジョブの処理開始を許可するようにしている(ジョブの排他制御処理)。この点について、以下に詳述する。   Therefore, in the printer controller 6 of the image processing system (MFP) 1 according to the present embodiment, a plurality of jobs can be simultaneously executed with reference to the number of link lanes and job combinations of the high-speed serial bus 7 according to the PCI Express standard. Judgment is made as to whether it is possible, and the start of processing of various jobs is allowed (exclusive control processing of jobs). This point will be described in detail below.

プリンタコントローラ6は、図19に示すように、画像処理システム(MFP)1に電源が投入されると(ステップS1)、コントローラ側(プリンタコントローラ6)とエンジン側(画像入力部3及び画像出力部4)とがPCI Express規格による高速シリアルバス7によりどのようにリンクアップされているかについてレーン情報を参照し(ステップS2)、その情報をレジスタ(一時記憶装置)に書き込む(ステップS3:レーン情報取得手段)。   19, when the image processing system (MFP) 1 is powered on (step S1), the printer controller 6 and the engine side (image input unit 3 and image output unit) are turned on. 4) is referenced to the lane information regarding how the high-speed serial bus 7 according to the PCI Express standard is linked (step S2), and the information is written to a register (temporary storage device) (step S3: lane information acquisition) means).

ここで、図20はコントローラ側とエンジン側とのリンクアップの一例を示す説明図である。図20に示すように、本実施の形態においては、コントローラ側がx16リンク、エンジン側がx2リンクとする。このようなコントローラとエンジンとの間のレーン情報を取得するのは、コントローラ側(プリンタコントローラ6)とエンジン側(画像入力部3及び画像出力部4)とにおけるレーン情報の組み合わせにより高速シリアルバス7の帯域(MB/s)が決まり、また、図18に示したようなジョブ毎に高速シリアルバス7の帯域をどの程度使うのかが決まるためである。   Here, FIG. 20 is an explanatory diagram showing an example of link-up between the controller side and the engine side. As shown in FIG. 20, in the present embodiment, the controller side is assumed to be an x16 link, and the engine side is assumed to be an x2 link. The lane information between the controller and the engine is acquired by combining the lane information on the controller side (printer controller 6) and the engine side (image input unit 3 and image output unit 4). This is because the bandwidth (MB / s) is determined and how much bandwidth of the high-speed serial bus 7 is used for each job as shown in FIG.

本実施の形態においては、コントローラ側(プリンタコントローラ6)とエンジン側(画像入力部3及び画像出力部4)とにおけるレーン情報の組み合わせ毎に、図21に示すような出力系/入力系のジョブの組み合わせに応じてジョブの排他制御を設定した排他制御テーブルTを予め作ることができ、これをプリンタコントローラ6が備えるメモリなどの記憶装置に保存しておく。図21に示す例によれば、コントローラ側がx16リンク、エンジン側がx2リンクの場合には、画像読み取りジョブ(図18−1参照)とプリント印刷ジョブ(図18−4参照)とは、マシンスペックの性能で処理することができない。これは、プリント印刷ジョブに用いられる画像データが大きいことから、プリント印刷ジョブにかかる負荷が大きいためである。このような場合には、画像読み取りジョブとプリント印刷ジョブを1枚毎に処理するか、どちらかのジョブが終わるのを待たなければならない。なお、図21に示すように、エンジン側がx4リンクの場合には、バンド幅が広がるので、画像読み取りジョブとプリント印刷ジョブとを同時に行うことが可能である。一方、図21に示すように、エンジン側がx1リンクの場合には、バンド幅が狭まるので、画像読み取りジョブとコピー印刷ジョブ(図18−3参照)とを同時に行うことが不可能となる。   In the present embodiment, for each combination of lane information on the controller side (printer controller 6) and engine side (image input unit 3 and image output unit 4), an output system / input system job as shown in FIG. The exclusive control table T in which the exclusive control of the job is set according to the combination can be created in advance, and is stored in a storage device such as a memory provided in the printer controller 6. According to the example shown in FIG. 21, when the controller side is an x16 link and the engine side is an x2 link, the image reading job (see FIG. 18-1) and the print print job (see FIG. 18-4) are machine specifications. It cannot be processed with performance. This is because the load on the print print job is large because the image data used in the print print job is large. In such a case, it is necessary to process the image reading job and the print print job one by one, or wait for one of the jobs to end. As shown in FIG. 21, when the engine side is an x4 link, the bandwidth is widened, so that an image reading job and a print print job can be performed simultaneously. On the other hand, as shown in FIG. 21, when the engine side is an x1 link, the bandwidth is narrowed, so that it is impossible to simultaneously perform an image reading job and a copy print job (see FIG. 18-3).

ここで、ジョブの排他制御処理について図22のフローチャートを参照して説明する。図22に示すように、ジョブの実行指示を受けた後に(ステップS11:ジョブ実行受付手段)、図19におけるステップS3で記憶したレーン情報の取得を行う(ステップS12)。その後、テーブルTのステップS12で取得したレーン情報に合致した情報を参照し(ステップS13)、ジョブを実行するとPCI Expressの帯域を100%使ってしまうのかどうか判断する(ステップS14:ジョブ実行判断手段)。   Here, the job exclusive control processing will be described with reference to the flowchart of FIG. As shown in FIG. 22, after receiving a job execution instruction (step S11: job execution receiving means), the lane information stored in step S3 in FIG. 19 is acquired (step S12). After that, the information that matches the lane information acquired in step S12 of the table T is referred to (step S13), and it is determined whether or not the PCI Express bandwidth is used 100% when the job is executed (step S14: job execution determination means). ).

PCI Express規格による高速シリアルバス7の帯域を100%使わないと判断した場合には(ステップS14のNo)、指示があったジョブを実行する(ステップS15:ジョブ実行手段)。   If it is determined that 100% of the bandwidth of the high-speed serial bus 7 according to the PCI Express standard is not used (No in step S14), the instructed job is executed (step S15: job execution means).

一方、PCI Express規格による高速シリアルバス7の帯域を100%超えると判断した場合には(ステップS14のYes)、ジョブの保留を行う(ステップS16:ジョブ保留手段)。その後、すでに処理が走っていたジョブが終了するなどして、保留ジョブを実行しても帯域が100%を超えなくなったと判断された場合(ステップS17のNo:ジョブ実行再判断手段)、ステップS16で保留したジョブの実行を行う(ステップS18:保留ジョブ実行手段)。   On the other hand, if it is determined that the bandwidth of the high-speed serial bus 7 according to the PCI Express standard exceeds 100% (Yes in step S14), the job is held (step S16: job holding means). Thereafter, when it is determined that the bandwidth has not exceeded 100% even if the pending job is executed (for example, No in step S17: job execution re-determination means) because the job that has already been processed ends or the like is terminated. In step S18, the suspended job is executed.

なお、ステップS16にてジョブの保留を行っているが、実行中のジョブより優先順位が高いとユーザの設定などで決められている場合、実行中のジョブを保留して指示のあったジョブを割り込ませても構わない。   Although the job is suspended in step S16, if it is determined by the user setting that the priority is higher than the job being executed, the job being instructed is suspended and the job being executed is suspended. You may interrupt.

また、本実施の形態では、簡単なテーブルTを用いて説明したが、スキャナ(画像入力部3)による画像読み取りであれば、画像処理内容(白黒/カラー、読み取り密度(200,400,600dpi)など)によって必要とする高速シリアルバス7の帯域が変わるため、テーブルTの内容はもっと詳細になる。   In the present embodiment, a simple table T has been described. However, if an image is read by a scanner (image input unit 3), the contents of image processing (monochrome / color, reading density (200, 400, 600 dpi)) Etc.), the content of the table T becomes more detailed.

さらに、3つ以上のジョブが実行できるかどうかについては、ジョブ1つ毎にPCI Express規格による高速シリアルバス7の帯域をどの程度使うのかを1次元のテーブルとして持ち、それらの合計が100%を超えるかどうか判断することで、同様の効果が得られる。   Furthermore, as to whether or not three or more jobs can be executed, each job has a one-dimensional table indicating how much of the bandwidth of the high-speed serial bus 7 according to the PCI Express standard is used, and the total of them is 100%. The same effect can be obtained by determining whether or not it exceeds.

このように本実施の形態によれば、高速シリアルバス7のリンクのレーン数を参照してジョブの複数同時実行が可能かどうかを判断し、ジョブの処理開始を許可することができるので、システムが誤動作したり、画像が異常になることがない。   As described above, according to the present embodiment, it is possible to determine whether or not a plurality of jobs can be simultaneously executed by referring to the number of lanes of the link of the high-speed serial bus 7, and to permit the start of job processing. Does not malfunction or the image does not become abnormal.

既存PCIシステムの構成例を示すブロック図である。It is a block diagram which shows the structural example of the existing PCI system. PCI Expressシステムの構成例を示すブロック図である。FIG. 2 is a block diagram illustrating a configuration example of a PCI Express system. デスクトップ/モバイルでのPCI Expressプラットホームの構成例を示すブロック図である。It is a block diagram which shows the structural example of the PCI Express platform in desktop / mobile. x4の場合の物理層の構造例を示す模式図である。It is a schematic diagram which shows the structural example of the physical layer in the case of x4. デバイス間のレーン接続例を示す模式図である。It is a schematic diagram which shows the example of lane connection between devices. スイッチの論理的構造例を示すブロック図である。It is a block diagram which shows the logical structural example of a switch. 既存のPCIのアーキテクチャを示すブロック図である。It is a block diagram which shows the architecture of the existing PCI. PCI Expressのアーキテクチャを示すブロック図である。It is a block diagram which shows the architecture of PCI Express. PCI Expressの階層構造を示すブロック図である。It is a block diagram which shows the hierarchical structure of PCI Express. トランザクションレイヤパケットのフォーマット例を示す説明図である。It is explanatory drawing which shows the format example of a transaction layer packet. PCI Expressのコンフィグレーション空間を示す説明図である。It is explanatory drawing which shows the configuration space of PCI Express. 仮想チャネルの概念を説明するための模式図である。It is a schematic diagram for demonstrating the concept of a virtual channel. データリンクレイヤパケットのフォーマット例を示す説明図である。It is explanatory drawing which shows the format example of a data link layer packet. x4リンクでのバイトストライピング例を示す模式図である。It is a schematic diagram which shows the byte striping example in x4 link. L0/L0s/L1/L2というリンクステートの定義について説明する説明図である。It is explanatory drawing explaining the definition of the link state of L0 / L0s / L1 / L2. アクティブステート電源管理の制御例を示すタイムチャートである。It is a time chart which shows the example of control of active state power management. 本発明の実施の一形態の画像処理システムの構成例を示す概略ブロック図である。1 is a schematic block diagram illustrating a configuration example of an image processing system according to an embodiment of the present invention. その変形構成例を示す概略ブロック図である。It is a schematic block diagram which shows the modification structural example. 画像読み取りジョブにおける画像データの流れを示す説明図である。It is explanatory drawing which shows the flow of the image data in an image reading job. コピー蓄積ジョブにおける画像データの流れを示す説明図である。FIG. 6 is an explanatory diagram illustrating a flow of image data in a copy accumulation job. コピー印刷ジョブにおける画像データの流れを示す説明図である。FIG. 6 is an explanatory diagram illustrating a flow of image data in a copy print job. プリント印刷ジョブにおける画像データの流れを示す説明図である。FIG. 6 is an explanatory diagram illustrating a flow of image data in a print print job. 接続情報取得処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a connection information acquisition process. コントローラ側とエンジン側とのリンクアップの一例を示す説明図である。It is explanatory drawing which shows an example of the link up of the controller side and the engine side. コントローラ側とエンジン側とにおけるレーン情報の組み合わせ毎の出力系/入力系のジョブの組み合わせに応じたジョブの排他制御テーブルを示す模式図である。It is a schematic diagram showing an exclusive control table for jobs according to combinations of output / input jobs for each combination of lane information on the controller side and the engine side. ジョブの排他制御処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the exclusive control process of a job.

符号の説明Explanation of symbols

1 画像処理システム
3,4 画像処理エンジン
6 コントローラ
7 高速シリアルバス
T 排他制御テーブル
1 Image processing system 3, 4 Image processing engine 6 Controller 7 High-speed serial bus T Exclusive control table

Claims (21)

木構造によるデータ通信網としてポイントツーポイントで送受信独立の通信チャネルが確立される高速シリアルバスにより画像処理エンジンとコントローラとを接続し、前記画像処理エンジンと前記コントローラとの間におけるジョブの複数同時実行が可能な画像処理システムにおいて、
前記高速シリアルバスのリンクのレーン数及びジョブの組み合わせを参照して、ジョブの複数同時実行が可能かどうか判断し、各種ジョブの処理開始を許可するようにした、
ことを特徴とする画像処理システム。
The image processing engine and the controller are connected by a high-speed serial bus that establishes a point-to-point transmission / reception independent communication channel as a tree-structured data communication network, and a plurality of jobs are simultaneously executed between the image processing engine and the controller. In an image processing system capable of
With reference to the number of lanes of the link of the high-speed serial bus and the combination of jobs, it is determined whether or not a plurality of jobs can be simultaneously executed, and processing start of various jobs is permitted.
An image processing system characterized by that.
木構造によるデータ通信網としてポイントツーポイントで送受信独立の通信チャネルが確立される高速シリアルバスにより画像処理エンジンとコントローラとを接続し、前記画像処理エンジンと前記コントローラとの間におけるジョブの複数同時実行が可能な画像処理システムにおいて、
前記画像処理エンジンと前記コントローラとの間の前記高速シリアルバスのレーン情報を取得するレーン情報取得手段と、
少なくとも1以上のジョブの実行指示を受けつけるジョブ実行受付手段と、
このジョブ実行受付手段により画像出力系のジョブと画像入力系のジョブとをそれぞれ受け付けた場合であって前記高速シリアルバスのリソースが100%を超えてしまう場合には、前記レーン情報取得手段により取得した前記高速シリアルバスのレーン情報に従って前記各ジョブの実行を排他制御する排他制御手段と、
を備えることを特徴とする画像処理システム。
The image processing engine and the controller are connected by a high-speed serial bus that establishes a point-to-point transmission / reception independent communication channel as a tree-structured data communication network, and a plurality of jobs are simultaneously executed between the image processing engine and the controller. In an image processing system capable of
Lane information acquisition means for acquiring lane information of the high-speed serial bus between the image processing engine and the controller;
Job execution accepting means for receiving at least one job execution instruction;
When the job execution accepting unit accepts an image output type job and an image input type job, respectively, and the high-speed serial bus resource exceeds 100%, the lane information obtaining unit obtains the job. Exclusive control means for exclusively controlling the execution of each job according to the lane information of the high-speed serial bus;
An image processing system comprising:
前記排他制御手段は、
前記ジョブ実行受付手段により画像出力系のジョブと画像入力系のジョブとをそれぞれ受け付けた場合、前記レーン情報取得手段により取得した前記高速シリアルバスのレーン情報に従って、前記各ジョブの同時実行が可能かどうかを判断するジョブ実行判断手段と、
このジョブ実行判断手段により前記各ジョブの同時実行が可能であると判断した場合には、指示があった前記画像出力系のジョブと前記画像入力系のジョブとをそれぞれを実行するジョブ実行手段と、
前記ジョブ実行判断手段により前記各ジョブの同時実行が可能でないと判断した場合には、指示があった前記画像出力系のジョブと前記画像入力系のジョブとのいずれか一方の実行を保留するジョブ保留手段と、
このジョブ保留手段により保留された前記ジョブの実行が可能かどうかを判断するジョブ実行再判断手段と、
このジョブ実行再判断手段により前記各ジョブの実行が可能であると判断した場合には、保留されていた前記ジョブを実行する保留ジョブ実行手段と、
を備えることを特徴とする請求項2記載の画像処理システム。
The exclusive control means includes
If the job execution accepting unit accepts an image output job and an image input job, respectively, can the jobs be executed simultaneously according to the lane information of the high-speed serial bus acquired by the lane information acquiring unit? Job execution determination means for determining whether or not
If it is determined by the job execution determination means that the respective jobs can be executed simultaneously, job execution means for executing the image output system job and the image input system job that are instructed, respectively. ,
A job that suspends execution of either the image output job or the image input job that has been instructed when the job execution determining means determines that the jobs cannot be executed simultaneously. Holding means,
Job execution re-determination means for determining whether the job held by the job holding means can be executed;
If it is determined by the job execution re-determination means that each job can be executed, the suspended job execution means for executing the held job;
The image processing system according to claim 2, further comprising:
前記ジョブ実行判断手段は、前記画像処理エンジンと前記コントローラとの間の前記高速シリアルバスのレーン情報の組み合わせ毎に、前記画像出力系のジョブと前記画像入力系のジョブとの組み合わせに応じてジョブの排他制御を設定した排他制御テーブルを参照して、前記各ジョブの同時実行が可能かどうかを判断する、
ことを特徴とする請求項3記載の画像処理システム。
The job execution determination unit is configured to execute a job according to a combination of the image output system job and the image input system job for each combination of lane information of the high-speed serial bus between the image processing engine and the controller. Refer to the exclusive control table in which the exclusive control is set to determine whether the jobs can be executed simultaneously.
The image processing system according to claim 3.
前記ジョブ保留手段は、指示のあったジョブが実行中のジョブより優先順位が高く設定されている場合、実行中のジョブを保留して指示のあったジョブを割り込ませる、
ことを特徴とする請求項3記載の画像処理システム。
The job holding means holds the currently executed job and interrupts the indicated job when the specified job has a higher priority than the currently executed job.
The image processing system according to claim 3.
前記排他制御テーブルは、画像処理内容に応じて可変である、
ことを特徴とする請求項4記載の画像処理システム。
The exclusive control table is variable according to image processing content.
The image processing system according to claim 4.
前記ジョブ実行判断手段は、3つ以上のジョブが実行できるかどうかについては、ジョブ1つ毎に前記高速シリアルバスの帯域をどの程度使うのかを1次元のテーブルとして持ち、それらの合計が100%を超えるかどうか判断する、
ことを特徴とする請求項3記載の画像処理システム。
The job execution determination means has a one-dimensional table indicating how much bandwidth of the high-speed serial bus is used for each job as to whether or not three or more jobs can be executed, and the total of them is 100%. To determine whether or not
The image processing system according to claim 3.
前記高速シリアルバスは、PCI Express 規格の高速シリアルバスである、
ことを特徴とする請求項1ないし7のいずれか一記載の画像処理システム。
The high-speed serial bus is a PCI Express standard high-speed serial bus.
The image processing system according to claim 1, wherein the image processing system is an image processing system.
木構造によるデータ通信網としてポイントツーポイントで送受信独立の通信チャネルが確立される高速シリアルバスにより画像処理エンジンとコントローラとを接続し、前記画像処理エンジンと前記コントローラとの間におけるジョブの複数同時実行をコンピュータに実行させるプログラムであって、
前記画像処理エンジンと前記コントローラとの間の前記高速シリアルバスのレーン情報を取得するレーン情報取得機能と、
少なくとも1以上のジョブの実行指示を受けつけるジョブ実行受付機能と、
このジョブ実行受付機能により画像出力系のジョブと画像入力系のジョブとをそれぞれ受け付けた場合であって前記高速シリアルバスのリソースが100%を超えてしまう場合には、前記レーン情報取得機能により取得した前記高速シリアルバスのレーン情報に従って前記各ジョブの実行を排他制御する排他制御機能と、
を前記コンピュータに実行させることを特徴とするプログラム。
The image processing engine and the controller are connected by a high-speed serial bus that establishes a point-to-point transmission / reception independent communication channel as a tree-structured data communication network, and a plurality of jobs are simultaneously executed between the image processing engine and the controller. A program for causing a computer to execute
A lane information acquisition function for acquiring lane information of the high-speed serial bus between the image processing engine and the controller;
A job execution acceptance function that accepts at least one job execution instruction;
When the job execution accepting function accepts an image output job and an image input job and the high-speed serial bus resource exceeds 100%, the job information is obtained by the lane information obtaining function. An exclusive control function that exclusively controls the execution of each job according to the lane information of the high-speed serial bus,
That causes the computer to execute the program.
前記排他制御機能は、
前記ジョブ実行受付機能により画像出力系のジョブと画像入力系のジョブとをそれぞれ受け付けた場合、前記レーン情報取得機能により取得した前記高速シリアルバスのレーン情報に従って、前記各ジョブの同時実行が可能かどうかを判断するジョブ実行判断機能と、
このジョブ実行判断機能により前記各ジョブの同時実行が可能であると判断した場合には、指示があった前記画像出力系のジョブと前記画像入力系のジョブとをそれぞれを実行するジョブ実行機能と、
前記ジョブ実行判断機能により前記各ジョブの同時実行が可能でないと判断した場合には、指示があった前記画像出力系のジョブと前記画像入力系のジョブとのいずれか一方の実行を保留するジョブ保留機能と、
このジョブ保留機能により保留された前記ジョブの実行が可能かどうかを判断するジョブ実行再判断機能と、
このジョブ実行再判断機能により前記各ジョブの実行が可能であると判断した場合には、保留されていた前記ジョブを実行する保留ジョブ実行機能と、
を前記コンピュータに実行させることを特徴とする請求項9記載のプログラム。
The exclusive control function is:
Whether each job can be executed simultaneously according to the lane information of the high-speed serial bus acquired by the lane information acquisition function when receiving an image output job and an image input job by the job execution reception function. Job execution judgment function to judge whether
If it is determined by the job execution determination function that the respective jobs can be simultaneously executed, a job execution function for executing the image output job and the image input job that are instructed, respectively, ,
If the job execution determination function determines that the jobs cannot be executed simultaneously, the job that holds the execution of either the image output job or the image input job that has been instructed With hold function,
A job execution re-determination function that determines whether the job held by the job hold function can be executed;
If the job execution re-determination function determines that each job can be executed, the hold job execution function for executing the held job;
The program according to claim 9, wherein the computer is executed.
前記ジョブ実行判断機能は、前記画像処理エンジンと前記コントローラとの間の前記高速シリアルバスのレーン情報の組み合わせ毎に、前記画像出力系のジョブと前記画像入力系のジョブとの組み合わせに応じてジョブの排他制御を設定した排他制御テーブルを参照して、前記各ジョブの同時実行が可能かどうかを判断する、
ことを特徴とする請求項10記載のプログラム。
The job execution determination function performs a job according to a combination of the image output system job and the image input system job for each combination of lane information of the high-speed serial bus between the image processing engine and the controller. Refer to the exclusive control table in which the exclusive control is set to determine whether the jobs can be executed simultaneously.
The program according to claim 10.
前記ジョブ保留機能は、指示のあったジョブが実行中のジョブより優先順位が高く設定されている場合、実行中のジョブを保留して指示のあったジョブを割り込ませる、
ことを特徴とする請求項10記載のプログラム。
The job hold function holds the currently executed job and interrupts the specified job when the specified job has a higher priority than the currently executed job.
The program according to claim 10.
前記排他制御テーブルは、画像処理内容に応じて可変である、
ことを特徴とする請求項11記載のプログラム。
The exclusive control table is variable according to image processing content.
12. The program according to claim 11, wherein:
前記ジョブ実行判断機能は、3つ以上のジョブが実行できるかどうかについては、ジョブ1つ毎に前記高速シリアルバスの帯域をどの程度使うのかを1次元のテーブルとして持ち、それらの合計が100%を超えるかどうか判断する、
ことを特徴とする請求項10記載のプログラム。
The job execution determination function has a one-dimensional table indicating how much bandwidth of the high-speed serial bus is used for each job as to whether or not three or more jobs can be executed, and the total of them is 100%. To determine whether or not
The program according to claim 10.
木構造によるデータ通信網としてポイントツーポイントで送受信独立の通信チャネルが確立される高速シリアルバスにより画像処理エンジンとコントローラとを接続し、前記画像処理エンジンと前記コントローラとの間におけるジョブの複数同時実行が可能な画像処理システムにおけるジョブ実行方法であって、
前記高速シリアルバスのリンクのレーン数及びジョブの組み合わせを参照して、ジョブの複数同時実行が可能かどうか判断し、各種ジョブの処理開始を許可するようにした、
ことを特徴とするジョブ実行方法。
The image processing engine and the controller are connected by a high-speed serial bus that establishes a point-to-point transmission / reception independent communication channel as a tree-structured data communication network, and a plurality of jobs are simultaneously executed between the image processing engine and the controller. A job execution method in an image processing system capable of
With reference to the number of lanes of the link of the high-speed serial bus and the combination of jobs, it is determined whether or not a plurality of jobs can be simultaneously executed, and processing start of various jobs is permitted.
A job execution method characterized by the above.
木構造によるデータ通信網としてポイントツーポイントで送受信独立の通信チャネルが確立される高速シリアルバスにより画像処理エンジンとコントローラとを接続し、前記画像処理エンジンと前記コントローラとの間におけるジョブの複数同時実行が可能な画像処理システムにおけるジョブ実行方法であって、
前記画像処理エンジンと前記コントローラとの間の前記高速シリアルバスのレーン情報を取得するレーン情報取得工程と、
少なくとも1以上のジョブの実行指示を受けつけるジョブ実行受付工程と、
このジョブ実行受付工程により画像出力系のジョブと画像入力系のジョブとをそれぞれ受け付けた場合であって前記高速シリアルバスのリソースが100%を超えてしまう場合には、前記レーン情報取得工程により取得した前記高速シリアルバスのレーン情報に従って前記各ジョブの実行を排他制御する排他制御工程と、
を含むことを特徴とするジョブ実行方法。
The image processing engine and the controller are connected by a high-speed serial bus that establishes a point-to-point transmission / reception independent communication channel as a tree-structured data communication network, and a plurality of jobs are simultaneously executed between the image processing engine and the controller. A job execution method in an image processing system capable of
A lane information acquisition step of acquiring lane information of the high-speed serial bus between the image processing engine and the controller;
A job execution acceptance step for receiving an instruction to execute at least one job;
When the image output job and the image input job are received in the job execution receiving process and the high-speed serial bus resource exceeds 100%, the job information is acquired by the lane information acquiring process. An exclusive control step of performing exclusive control of the execution of each job according to the lane information of the high-speed serial bus,
Including a job execution method.
前記排他制御工程は、
前記ジョブ実行受付工程により画像出力系のジョブと画像入力系のジョブとをそれぞれ受け付けた場合、前記レーン情報取得工程により取得した前記高速シリアルバスのレーン情報に従って、前記各ジョブの同時実行が可能かどうかを判断するジョブ実行判断工程と、
このジョブ実行判断工程により前記各ジョブの同時実行が可能であると判断した場合には、指示があった前記画像出力系のジョブと前記画像入力系のジョブとをそれぞれを実行するジョブ実行工程と、
前記ジョブ実行判断工程により前記各ジョブの同時実行が可能でないと判断した場合には、指示があった前記画像出力系のジョブと前記画像入力系のジョブとのいずれか一方の実行を保留するジョブ保留工程と、
このジョブ保留工程により保留された前記ジョブの実行が可能かどうかを判断するジョブ実行再判断工程と、
このジョブ実行再判断工程により前記各ジョブの実行が可能であると判断した場合には、保留されていた前記ジョブを実行する保留ジョブ実行工程と、
を含むことを特徴とする請求項16記載のジョブ実行方法。
The exclusive control step includes
Whether each job can be executed simultaneously according to the lane information of the high-speed serial bus acquired in the lane information acquisition step when the image output job and the image input job are received in the job execution reception step. A job execution determination process for determining whether or not,
If it is determined in the job execution determination step that the respective jobs can be executed simultaneously, a job execution step for executing the image output job and the image input job that are instructed, respectively. ,
A job that suspends execution of either the image output job or the image input job that has been instructed when it is determined in the job execution determination step that the jobs cannot be executed simultaneously Holding process,
A job execution re-determination step for determining whether the job held by the job holding step is executable;
If the job execution re-determination step determines that each job can be executed, the hold job execution step for executing the held job;
The job execution method according to claim 16, further comprising:
前記ジョブ実行判断工程は、前記画像処理エンジンと前記コントローラとの間の前記高速シリアルバスのレーン情報の組み合わせ毎に、前記画像出力系のジョブと前記画像入力系のジョブとの組み合わせに応じてジョブの排他制御を設定した排他制御テーブルを参照して、前記各ジョブの同時実行が可能かどうかを判断する、
ことを特徴とする請求項17記載のジョブ実行方法。
The job execution determination step includes a job according to a combination of the image output system job and the image input system job for each combination of lane information of the high-speed serial bus between the image processing engine and the controller. Refer to the exclusive control table in which the exclusive control is set to determine whether the jobs can be executed simultaneously.
The job execution method according to claim 17, wherein:
前記ジョブ保留工程は、指示のあったジョブが実行中のジョブより優先順位が高く設定されている場合、実行中のジョブを保留して指示のあったジョブを割り込ませる、
ことを特徴とする請求項17記載のジョブ実行方法。
In the job holding step, when the priority of the instructed job is set higher than that of the job being executed, the instructed job is interrupted by holding the active job.
The job execution method according to claim 17, wherein:
前記排他制御テーブルは、画像処理内容に応じて可変である、
ことを特徴とする請求項18記載のジョブ実行方法。
The exclusive control table is variable according to image processing content.
The job execution method according to claim 18, wherein:
前記ジョブ実行判断工程は、3つ以上のジョブが実行できるかどうかについては、ジョブ1つ毎に前記高速シリアルバスの帯域をどの程度使うのかを1次元のテーブルとして持ち、それらの合計が100%を超えるかどうか判断する、
ことを特徴とする請求項17記載のジョブ実行方法。
The job execution determination step has a one-dimensional table indicating how much bandwidth of the high-speed serial bus is used for each job as to whether or not three or more jobs can be executed, and the total of them is 100%. To determine whether or not
The job execution method according to claim 17, wherein:
JP2005243170A 2005-08-24 2005-08-24 Image processing system, program, and job execution method Expired - Fee Related JP4607706B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005243170A JP4607706B2 (en) 2005-08-24 2005-08-24 Image processing system, program, and job execution method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005243170A JP4607706B2 (en) 2005-08-24 2005-08-24 Image processing system, program, and job execution method

Publications (2)

Publication Number Publication Date
JP2007058578A true JP2007058578A (en) 2007-03-08
JP4607706B2 JP4607706B2 (en) 2011-01-05

Family

ID=37922029

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005243170A Expired - Fee Related JP4607706B2 (en) 2005-08-24 2005-08-24 Image processing system, program, and job execution method

Country Status (1)

Country Link
JP (1) JP4607706B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007062076A (en) * 2005-08-30 2007-03-15 Ricoh Co Ltd Information processing system, program, and data transferring method
JP2008310798A (en) * 2007-05-14 2008-12-25 Ricoh Co Ltd Image processing controller and image forming apparatus

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11185030A (en) * 1997-12-19 1999-07-09 Canon Inc Image processor and image processing system
JP2004112520A (en) * 2002-09-19 2004-04-08 Fuji Xerox Co Ltd Image forming apparatus, and connection device used therefor
JP2005092541A (en) * 2003-09-17 2005-04-07 Ricoh Co Ltd Image-forming apparatus
JP2005166029A (en) * 2003-11-11 2005-06-23 Ricoh Co Ltd Data transfer system, image formation system, and data transfer method
JP2005184097A (en) * 2003-12-16 2005-07-07 Ricoh Co Ltd Image forming apparatus
JP2005210653A (en) * 2003-12-25 2005-08-04 Ricoh Co Ltd Image forming system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11185030A (en) * 1997-12-19 1999-07-09 Canon Inc Image processor and image processing system
JP2004112520A (en) * 2002-09-19 2004-04-08 Fuji Xerox Co Ltd Image forming apparatus, and connection device used therefor
JP2005092541A (en) * 2003-09-17 2005-04-07 Ricoh Co Ltd Image-forming apparatus
JP2005166029A (en) * 2003-11-11 2005-06-23 Ricoh Co Ltd Data transfer system, image formation system, and data transfer method
JP2005184097A (en) * 2003-12-16 2005-07-07 Ricoh Co Ltd Image forming apparatus
JP2005210653A (en) * 2003-12-25 2005-08-04 Ricoh Co Ltd Image forming system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007062076A (en) * 2005-08-30 2007-03-15 Ricoh Co Ltd Information processing system, program, and data transferring method
JP2008310798A (en) * 2007-05-14 2008-12-25 Ricoh Co Ltd Image processing controller and image forming apparatus

Also Published As

Publication number Publication date
JP4607706B2 (en) 2011-01-05

Similar Documents

Publication Publication Date Title
JP4928732B2 (en) Data transfer system and electronic device
JP4704050B2 (en) Data transfer system and electronic device
US7755791B2 (en) Image processing apparatus and image forming apparatus
JP2006195871A (en) Communication device, electronic equipment and image forming device
JP4564855B2 (en) Data transfer system and electronic device
JP2008172727A (en) Control apparatus and image processing system
JP2007087082A (en) Information processor and option device sharing method
JP4308680B2 (en) Image forming apparatus
JP2008204245A (en) Data communication device, image processing system and data communication method
JP4287325B2 (en) Imaging system
JP4564740B2 (en) Imaging equipment system
JP4928715B2 (en) Serial data transfer device, image output device, image input device, and image forming device
JP4777723B2 (en) Information processing system, program, and data transfer method
JP4425766B2 (en) Image forming system
JP5218377B2 (en) Image forming system
JP4607706B2 (en) Image processing system, program, and job execution method
JP4828899B2 (en) Information processing apparatus and storage device sharing method
JP2005332372A (en) Image processing apparatus and image forming apparatus
JP2005332316A (en) Data distribution device, data transfer device and image processing device
JP4690828B2 (en) Information processing system, program, and packet communication method
JP2005346629A (en) Image processing apparatus
JP4824422B2 (en) Control device, image processing system, and data transfer path switching method
JP4271558B2 (en) Data transfer system, image forming system, and data transfer program
JP2007226494A (en) Data transfer system
JP2007272871A (en) Information processing apparatus and data communication method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080707

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100615

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100813

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101007

R150 Certificate of patent or registration of utility model

Ref document number: 4607706

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131015

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees