JP4618112B2 - Multiprocessor system - Google Patents
Multiprocessor system Download PDFInfo
- Publication number
- JP4618112B2 JP4618112B2 JP2005334291A JP2005334291A JP4618112B2 JP 4618112 B2 JP4618112 B2 JP 4618112B2 JP 2005334291 A JP2005334291 A JP 2005334291A JP 2005334291 A JP2005334291 A JP 2005334291A JP 4618112 B2 JP4618112 B2 JP 4618112B2
- Authority
- JP
- Japan
- Prior art keywords
- processing
- processor
- image
- executed
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Bus Control (AREA)
Description
本発明は、複数のプロセッサを備えるマルチプロセッサシステムに関する。 The present invention relates to a multiprocessor system including a plurality of processors.
高速なデータ処理を行うために、複数のプロセッサを備え、各プロセッサが分担して種々の処理を実行するマルチプロセッサシステムが考えられている(例えば、特許文献1〜3参照)。
In order to perform high-speed data processing, a multiprocessor system is considered that includes a plurality of processors and each processor shares and executes various processes (see, for example,
しかし、従来のマルチプロセッサシステムでは、通常、あるプロセッサで動作している第1の処理機能が他のプロセッサで動作する第2の処理機能に対して、その処理の実行を要求した場合において、第2の処理機能は、要求された処理の実行を完了してその応答を返すまで、他の要求を実行することができない。このため、第1の処理機能は、第2の処理機能に対して次の要求を行うことができず、第2の処理機能が実行している処理が完了するまで、待たなければならないことになる。なお、第2の処理機能が複数の要求をあらかじめ受け付けることができるようにすることも可能である。しかしながら、この場合であっても、第2の処理機能は受け付けた複数の要求に対する処理を、順番に実行することになるため、後で発生した要求が先に発生した要求よりも先に処理されることはなく、実質的には、第1の処理機能が第2の処理機能に対して次の要求を行うことができない場合と、同様である。 However, in the conventional multiprocessor system, when the first processing function operating on a certain processor requests the second processing function operating on another processor to execute the processing, The second processing function cannot execute another request until the requested processing is completed and a response is returned. For this reason, the first processing function cannot make the next request to the second processing function, and must wait until the processing executed by the second processing function is completed. Become. Note that the second processing function can accept a plurality of requests in advance. However, even in this case, the second processing function sequentially executes the processing for the received requests, so that the request generated later is processed before the request generated earlier. This is substantially the same as when the first processing function cannot make the next request to the second processing function.
従って、第2の処理機能への要求をキャンセルしたい場合であっても、そのキャンセル要求は、第1の処理機能から第2の処理機能への処理の要求として、第2の処理機能に伝えられることになるため、即座にキャンセルすることはできず、第2の処理機能に対して要求した処理の完了を待たなければならないことになる。この場合、以下で説明するような場合に不便である。 Therefore, even when it is desired to cancel the request for the second processing function, the cancellation request is transmitted to the second processing function as a request for processing from the first processing function to the second processing function. Therefore, it cannot be canceled immediately, and it is necessary to wait for completion of the processing requested for the second processing function. This is inconvenient in the case described below.
例えば、マルチプロセッサシステムを用いて印刷制御を実行する場合において、選択した画像を印刷媒体上にレイアウトして、そのレイアウト結果を確認した上で印刷を実行する場合を考える。 For example, when executing print control using a multiprocessor system, consider a case where a selected image is laid out on a print medium and printing is executed after confirming the layout result.
前提として、マルチプロセッサシステムのうちの、メインのプロセッサは、選択した画像を画面上に表示される印刷媒体上の対応する位置に表示するために種々の画像処理を制御する画像処理機能として動作するものとする。また、マルチプロセッサシステムのうちの、あるサブのプロセッサは、選択した画像を表す画像データを、例えばJPEG形式の画像データのように圧縮されて保存されている画像ファイルから読み出して展開する処理を、画像処理機能からの指示を受けて分担して実行するデコード処理機能として動作するものとする。 As a premise, the main processor of the multiprocessor system operates as an image processing function for controlling various image processing in order to display the selected image at a corresponding position on the print medium displayed on the screen. Shall. In addition, a sub processor of the multiprocessor system performs processing of reading out and developing image data representing a selected image from an image file that is compressed and saved, for example, image data in JPEG format. It is assumed that it operates as a decoding processing function that executes in response to an instruction from the image processing function.
この場合において、ユーザが、ある画像を選択して印刷媒体上にレイアウトし、そのレイアウト結果の表示を指示すると、メインのプロセッサの画像処理機能は、サブのプロセッサのデコード処理機能に対してデコード処理を要求する。サブのプロセッサのデコード処理機能は、要求されたデコード処理の実行を開始する。 In this case, when the user selects an image, lays it out on the print medium, and instructs the display of the layout result, the image processing function of the main processor performs the decoding process for the decoding processing function of the sub processor Request. The decoding processing function of the sub processor starts execution of the requested decoding processing.
ここで、デコード処理の実行中に、ユーザが画像を変更したい場合がある。例えば、選択した画像が間違っていたため、正しい画像に変更したい場合がある。また、通常、表示する画像のサイズが大きい場合には、バンドと呼ばれるブロック単位で処理を実行し、実行されたブロックごとに画像を順に表示するため、一部の画像が表示された段階で表示を中止したい場合もある。このような場合には、サブのプロセッサのデコード処理機能に対して指示された要求に対する処理が即座に中止可能であることが好ましい。 Here, there is a case where the user wants to change the image during the execution of the decoding process. For example, there is a case where the selected image is wrong and it is desired to change to a correct image. Normally, when the size of the image to be displayed is large, the processing is executed in units of blocks called bands, and the images are displayed in order for each executed block, so that a part of the image is displayed. Sometimes you want to cancel. In such a case, it is preferable that processing for a request instructed to the decoding processing function of the sub processor can be stopped immediately.
しかしながら、上述したように、従来のマルチプロセッサシステムの場合には、既にデコード処理機能に対して要求された処理が完了するまで、画像処理機能からデコード処理機能に対してキャンセルの要求を行うことができないことになるため、仮に、メインのプロセッサの画像処理機能により、次の画像の選択が可能であったとしても、サブのプロセッサのデコード処理機能によって、次に選択した画像を表す画像データのデコード処理を開始することができないことになる。この結果、キャンセル処理の待ち時間が長くなり、次に選択した画像を表示するまでの時間が長くなってしまうため、ユーザはストレスを感じる場合もある。 However, as described above, in the case of a conventional multiprocessor system, a cancellation request may be issued from the image processing function to the decoding processing function until the processing already requested for the decoding processing function is completed. Therefore, even if the next image can be selected by the image processing function of the main processor, the image data representing the next selected image is decoded by the decoding processing function of the sub processor. The process cannot be started. As a result, the waiting time for the cancellation process becomes longer, and the time until the next selected image is displayed becomes longer, so the user may feel stress.
そこで、本発明は、上述の課題を解決するためになされたものであり、高速なキャンセル処理を可能とするマルチプロセッサシステムを提供することを目的とする。 Accordingly, the present invention has been made to solve the above-described problems, and an object of the present invention is to provide a multiprocessor system that enables high-speed cancellation processing.
上述の課題の少なくとも一部を解決するために、本発明の態様は、
複数のプロセッサを備えるマルチプロセッサシステムであって、
前記複数のプロセッサのうちの第1のプロセッサと少なくとも1つの第2のプロセッサとの間に、
前記第1のプロセッサから前記第2のプロセッサへ第1の処理要求信号を伝送するとともに、前記第2のプロセッサから前記第1のプロセッサへ前記第1の処理要求に対する第1の処理応答信号を伝送する、ために設けられた第1の通信経路と、
前記第1の処理要求に従って前記第2のプロセッサで実行される処理の中止を示す第1の割り込み信号を伝送するために設けられた専用の第1の割り込み信号経路と、を備えており、
前記第1のプロセッサは、前記第2のプロセッサで実行される処理のキャンセルを示すキャンセル信号が入力された場合に、前記第2のプロセッサに対して、前記第1の割り込み信号を、前記第1の割り込み信号経路を介して送信し、
前記第2のプロセッサは、前記第1の割り込み信号を受信した場合において、前記第1の処理要求に従って実行されている実行中の処理を中止して、前記実行中の処理の終了を示す前記第1の処理応答信号を、前記第1の通信経路を介して送信する、
ことを特徴とする。
In order to solve at least a part of the problems described above, an aspect of the present invention provides
A multiprocessor system comprising a plurality of processors,
Between a first processor and at least one second processor of the plurality of processors,
A first processing request signal is transmitted from the first processor to the second processor, and a first processing response signal is transmitted from the second processor to the first processor in response to the first processing request. A first communication path provided for, and
A dedicated first interrupt signal path provided for transmitting a first interrupt signal indicating suspension of processing executed by the second processor in accordance with the first processing request,
The first processor outputs the first interrupt signal to the second processor when the cancel signal indicating cancellation of processing executed by the second processor is input to the second processor. Send via the interrupt signal path of
When the second processor receives the first interrupt signal, the second processor stops the process being executed according to the first process request, and indicates the end of the process being executed. 1 processing response signal is transmitted via the first communication path;
It is characterized by that.
上記構成のマルチプロセッサシステムによれば、第1のプロセッサは、第2のプロセッサで実行される処理のキャンセルを示すキャンセル信号が入力された場合に、第2のプロセッサに対して専用の第1の割り込み信号経路を介して、第1の割り込み信号を伝送することができる。そして、第2のプロセッサは、第1の割り込み信号を受信すると、第1の処理要求に従って実行されている実行中の処理を中止して、実行中の処理の終了を示す第1の処理応答信号を、第1の通信経路を介して送信することができる。これにより、高速なキャンセル処理を実現することが可能である。 According to the multiprocessor system configured as described above, the first processor receives the first signal dedicated to the second processor when a cancel signal indicating cancellation of the process executed by the second processor is input. The first interrupt signal can be transmitted via the interrupt signal path. When the second processor receives the first interrupt signal, the second processor stops the process being executed according to the first process request, and indicates the end of the process being executed. Can be transmitted via the first communication path. Thereby, a high-speed cancellation process can be realized.
なお、前記第2のプロセッサは、前記第1のプロセッサから前記第2のプロセッサに対して、複数の前記第1の処理要求が発生している状態で、前記第1の割り込み信号を受信した場合には、第1番目の前記第1の処理要求に従って実行されている実行中の処理を中止して、前記実行中の処理の終了を示す第1番目の前記第1の処理応答信号を、前記第1の通信経路を介して送信するとともに、第2番目以降の前記第1の処理要求に従って実行すべき未実行の処理を破棄して、前記実行すべき処理を未処理で終了したことを示す第2番目以降の前記第1の処理応答信号を、前記第1の通信経路を介して送信する、ことが好ましい。 When the second processor receives the first interrupt signal in a state where a plurality of the first processing requests are generated from the first processor to the second processor. The first process response signal indicating the end of the process being executed is canceled by canceling the process being executed in accordance with the first process request. It is transmitted through the first communication path, discards the unexecuted process to be executed in accordance with the second and subsequent first process requests, and indicates that the process to be executed has ended unprocessed. It is preferable that the second and subsequent first processing response signals are transmitted via the first communication path.
上記のようにすれば、複数の第1の処理要求が発生している状態で、第1の割り込み信号を受信すると、それぞれの第1の処理要求に対する第1の処理応答を第1の通信経路を介して送信することができ、複数の第1の処理要求が発生している場合においても高速なキャンセル処理を実現することが可能である。 According to the above configuration, when the first interrupt signal is received in a state where a plurality of first processing requests are generated, the first processing response to each first processing request is sent to the first communication path. Thus, even when a plurality of first processing requests are generated, high-speed cancellation processing can be realized.
また、上記マルチプロセッサシステムは、さらに、
前記複数のプロセッサのうちの前記第2のプロセッサと少なくとも1つの第3のプロセッサとの間に、
前記第2のプロセッサから前記第3のプロセッサへ第2の処理要求信号を伝送するとともに、前記第3のプロセッサから前記第2のプロセッサへ前記第2の処理要求に対する第2の処理応答信号を伝送する、ために設けられた第2の通信経路と、
前記第2の処理要求に従って前記第3のプロセッサで実行される処理の中止を示す第2の割り込み信号を伝送するために設けられた専用の第2の割り込み信号経路と、を備えており、
前記第1のプロセッサは、前記第2のプロセッサおよび第3のプロセッサで実行される処理のキャンセルを示すキャンセル信号が入力された場合に、前記第2のプロセッサに対して、前記第1の割り込み信号を、前記第1の割り込み信号経路を介して送信するとともに、前記第3のプロセッサに対して、前記第2の割り込み信号を、前記第2の割り込み信号経路を介して送信し、
前記第3のプロセッサは、前記第2の割り込み信号を受信した場合において、前記第2の処理要求に従って実行されている実行中の処理を中止して、前記実行中の処理の終了を示す前記第2の処理応答信号を、前記第2の通信経路を介して送信し、
前記第2のプロセッサは、前記第1の割り込み信号を受信した場合において、前記第3のプロセッサから前記第2の処理応答信号を受信すると、前記第1の処理要求に従って実行されている実行中の処理を中止して、前記実行中の処理の終了を示す前記第1の処理応答信号を、前記第1の通信経路を介して送信する、
ことが好ましい。
The multiprocessor system further includes:
Between the second processor and the at least one third processor of the plurality of processors,
A second processing request signal is transmitted from the second processor to the third processor, and a second processing response signal for the second processing request is transmitted from the third processor to the second processor. A second communication path provided for, and
A dedicated second interrupt signal path provided for transmitting a second interrupt signal indicating suspension of processing executed by the third processor in accordance with the second processing request,
When the first processor receives a cancel signal indicating cancellation of processing executed by the second processor and the third processor, the first processor sends the first interrupt signal to the second processor. Is transmitted through the first interrupt signal path, and the second interrupt signal is transmitted to the third processor through the second interrupt signal path.
When the third processor receives the second interrupt signal, the third processor stops the process being executed according to the second process request, and indicates the end of the process being executed. 2 processing response signals are transmitted via the second communication path,
When the second processor receives the first interrupt signal and receives the second processing response signal from the third processor, the second processor is executing in accordance with the first processing request. Aborting the process and transmitting the first process response signal indicating the end of the process being executed via the first communication path;
It is preferable.
上記構成のマルチプロセッサシステムによれば、第1のプロセッサは、第2のプロセッサおよび第3のプロセッサで実行される処理のキャンセルを示すキャンセル信号が入力された場合に、第2のプロセッサに対して専用の第1の割り込み信号経路を介して第1の割り込み信号を伝送し、第3のプロセッサに対して専用の第2の割り込み信号経路を介して第2の割り込み信号を伝送することができる。そして、第3のプロセッサは、第2の割り込み信号を受信すると、第2の処理要求に従って実行されている実行中の処理を中止して、実行中の処理の終了を示す第2の処理応答信号を、第2の通信経路を介して送信し、第2のプロセッサは、第1の割り込み信号を受信し、第3のプロセッサから第2の処理応答信号を受信すると、第1の処理要求に従って実行されている実行中の処理を中止して、実行中の処理の終了を示す第1の処理応答信号を、第1の通信経路を介して送信することができる。これにより、第1のプロセッサからの第1の処理要求を受けて第2のプロセッサが対応する処理を実行し、さらに、第2のプロセッサからの第2の処理要求を受けて第3のプロセッサが対応する処理を実行する場合においても、高速なキャンセル処理を実現することが可能である。 According to the multiprocessor system configured as described above, when a cancel signal indicating cancellation of processing executed by the second processor and the third processor is input to the first processor, the first processor The first interrupt signal can be transmitted via the dedicated first interrupt signal path, and the second interrupt signal can be transmitted to the third processor via the dedicated second interrupt signal path. When the third processor receives the second interrupt signal, the third processor stops the process being executed in accordance with the second process request, and the second process response signal indicates the end of the process being executed. Is transmitted via the second communication path, and the second processor receives the first interrupt signal and executes the second processing response signal from the third processor according to the first processing request. The currently executed process can be canceled and a first process response signal indicating the end of the currently executed process can be transmitted via the first communication path. Accordingly, the second processor executes a corresponding process in response to the first processing request from the first processor, and the third processor receives the second processing request from the second processor. Even when the corresponding process is executed, a high-speed cancel process can be realized.
なお、前記第3のプロセッサは、前記第2のプロセッサから前記第1のプロセッサに対して、複数の前記第2の処理要求が発生している状態で、前記第2の割り込み信号を受信した場合には、第1番目の前記第2の処理要求に従って実行されている実行中の処理を中止して、前記実行中の処理の終了を示す第1番目の前記第2の処理応答信号を、前記第2の通信経路を介して送信するとともに、第2番目以降の前記第2の処理要求に従って実行すべき未実行の処理を破棄して、前記実行すべき処理を未処理で終了したことを示す第2番目以降の前記第2の応答処理信号を、前記第2の通信経路を介して送信することが好ましい。 When the third processor receives the second interrupt signal in a state where a plurality of the second processing requests are generated from the second processor to the first processor. The first process response signal indicating the end of the process being executed is canceled by stopping the process being executed in accordance with the first second process request. It is transmitted through the second communication path, discards the unexecuted process to be executed in accordance with the second and subsequent second processing requests, and indicates that the process to be executed has ended unprocessed. It is preferable that the second and subsequent second response processing signals are transmitted via the second communication path.
上記のようにすれば、複数の第2の処理要求が発生している状態で、第2の割り込み信号を受信すると、それぞれの第2の処理要求に対する第2の処理応答を第2の通信経路を介して送信することができ、複数の第2の処理要求が発生している場合においても高速なキャンセル処理を実現することが可能である。 According to the above, when the second interrupt signal is received in a state where a plurality of second processing requests are generated, the second processing response to each second processing request is sent to the second communication path. Thus, even when a plurality of second processing requests are generated, it is possible to realize high-speed cancellation processing.
なお、上記態様のマルチプロセッサシステムは、1つの半導体基板上に集積化されているようにすれば、より効果的である。 Note that the multiprocessor system of the above aspect is more effective if it is integrated on one semiconductor substrate.
以下、本発明の実施の形態について、実施例に基づき以下の順序で説明する。
A.実施例:
A1.マルチプロセッサシステムの構成:
A2.印刷イメージ処理動作時におけるマルチプロセッサシステムの機能:
A2.1.印刷イメージ処理制御機能:
A2.2.画像処理代理制御機能:
A2.3.デコード機能:
A2.4.画像補正機能:
A2.5.印刷イメージ画像データ生成機能:
A3.印刷イメージ処理:
A3.1.通常動作:
A3.2.キャンセル終了動作:
A4.効果:
B.変形例:
Hereinafter, embodiments of the present invention will be described in the following order based on examples.
A. Example:
A1. Multiprocessor system configuration:
A2. Multiprocessor system functions during print image processing:
A2.1. Print image processing control function:
A2.2. Image processing proxy control function:
A2.3. Decode function:
A2.4. Image correction function:
A2.5. Print image image data generation function:
A3. Print image processing:
A3.1. Normal operation:
A3.2. Cancel end action:
A4. effect:
B. Variations:
A.実施例:
A1.マルチプロセッサシステムの構成:
図1は、本発明のマルチプロセッサシステム10の一部を示す説明図である。このマルチプロセッサシステム10は、複数のプロセッサを1つの半導体基板上に集積化したマイクロプロセッサである。各プロセッサは、それぞれ、CPUや、メモリ、バスコントローラ等の周辺回路を含むユニットを意味している。なお、図1は、マルチプロセッサシステムを構成する複数のプロセッサのうちの、1つのメインプロセッサ100および3つのサブプロセッサ200A〜200Cと、メモリコントローラ300のみを示し、他の構成については省略している。
A. Example:
A1. Multiprocessor system configuration:
FIG. 1 is an explanatory diagram showing a part of a
メインプロセッサ100は、操作パネル等の入力装置30や、液晶パネル等の表示装置40、および、リーダを介して読み取り可能な可搬型記憶装置等の記憶装置50に接続されている。
The
また、メインプロセッサ100は、各サブプロセッサ200A〜200Cに対して、それぞれ個別に設けられた第1の通信経路NES1〜NES3を介して接続されており、メインプロセッサ100と各サブプロセッサ200A〜200Cとの間では、第1の通信経路NES1〜NES3を介して、それぞれ個別に、処理の要求やこの要求に対する応答をメッセージ通信することができる。なお、各通信経路NES1〜NES3は、メインプロセッサからサブプロセッサへの経路と、サブプロセッサからメインプロセッサへの経路の1組の経路で構成されている。また、以下では、これら第1の通信経路NESS1〜NES3を総称して第1の通信経路NESと呼ぶ場合もある。
The
各サブプロセッサ200A〜200Cは、それぞれを順に接続することにより、ループ状に設けられた第2の通信経路NIOを介して互いに接続されており、各サブプロセッサ200A〜200Cの間では、第2の通信経路NIOを介して、処理の要求やこの要求に対する応答を互いにメッセージ通信することができる。
The
メモリコントローラ300は、メインプロセッサ100および各サブプロセッサ200A〜200Cに対して、それぞれ個別に設けられた第3の通信経路NEM0〜NEM3を介して接続されており、メインプロセッサ100および各サブプロセッサ200A〜200Cは、メモリコントローラ300を介して、外部に接続されるRAM20へのアクセスを行うことができる。なお、第3の通信経路NEM0〜NEM3も、第1の通信経路NES1〜NES3と同様に、プロセッサからメモリコントローラへの経路と、メモリコントローラからプロセッサへの経路の1組の経路で構成されている。また、以下では、これら第3の通信経路NEM0〜NEM3を総称して第3の通信経路NEMと呼ぶ場合もある。
The
ここで、本実施例のマルチプロセッサシステム10の特徴として、メインプロセッサ100は、各サブプロセッサ200A〜200Cに対して、それぞれ個別に設けられた割り込み信号経路INT1〜INT3を介して接続されており、後述するように、メインプロセッサ100から各サブプロセッサ200A〜200Cに対して、それぞれ個別に、割り込み信号経路INT1〜INT3を介して、割り込み信号を送信することができる。
Here, as a feature of the
なお、第1のサブプロセッサ200Aに接続される割り込み信号経路INT1が本発明の第1の割り込み信号経路に相当し、第2および第3のサブプロセッサ200B,200Cに接続される割り込み信号経路INT2,INT3が本発明の第2の割り込み信号経路に相当する。以下では、これら割り込み信号経路INT1〜INT3を総称して割り込み信号経路INTと呼ぶ場合もある。 Note that the interrupt signal path INT1 connected to the first sub-processor 200A corresponds to the first interrupt signal path of the present invention, and the interrupt signal path INT2, connected to the second and third sub-processors 200B and 200C. INT3 corresponds to the second interrupt signal path of the present invention. Hereinafter, the interrupt signal paths INT1 to INT3 may be collectively referred to as an interrupt signal path INT.
上述したように、本実施例の特徴は、以下で説明するように、メインプロセッサ100から各サブプロセッサ200A〜200Cに対して、それぞれ個別に、割り込み信号経路INT1〜INT3を介して、割り込み信号を送信することができる点にある。
As described above, the feature of this embodiment is that an interrupt signal is individually sent from the
以下では、記憶装置50に格納されている画像ファイルの中から印刷したい画像の画像ファイルを選択して、印刷媒体上の所望の位置に所望のサイズで印刷する印刷制御を、上記実施例のマルチプロセッサシステム10を用いて実行する過程において、選択した画像を印刷媒体上の所望の位置に所望のサイズで配置した状態を示す印刷イメージ画像を、表示装置40上に表示する際に、印刷イメージ画像データを生成する印刷イメージ処理動作が、マルチプロセッサシステム10によって実行される場合を例として、上記特徴について説明することとする。
In the following, the print control for selecting an image file of an image to be printed from the image files stored in the
A2.印刷イメージ処理動作時におけるマルチプロセッサシステムの機能:
まず、マルチプロセッサシステム10で印刷イメージ処理動作を実行させる場合に、メインプロセッサ100および各サブプロセッサ200A〜200Cで実現される各機能について説明する。
A2. Multiprocessor system functions during print image processing:
First, each function realized by the
マルチプロセッサシステム10で印刷イメージ処理動作を実行させる場合において、メインプロセッサ100は、プロセッサの構成要素である図示しないメモリに格納されている所定のプログラムが読み出されて実行されることにより、図1に示すように、この印刷イメージ処理動作を全体として制御する印刷イメージ処理制御機能を実現する。具体的には、主に、印刷イメージ処理動作を全体的に制御する印刷イメージ処理制御部として動作するユーザインタフェース(「UI」とも呼ぶ)10、印刷イメージ処理を構成する画像処理およびレイアウト処理のうち、画像処理を分担する画像処理部(「DFT」とも呼ぶ)120、レイアウト処理を分担するレイアウト処理部(「OMT」とも呼ぶ)130、表示装置40の動作を制御する表示制御部(「DPC」とも呼ぶ)140、割り込み信号経路INTを介して送信する割り込み信号を発生する割り込み発生部(「INT発生部」とも呼ぶ)150、第1の通信経路NESを介して実行する通信を制御するNES通信部160、および、第3の通信経路NEMを介して実行する通信を制御するNEM通信部170の各機能ブロックとして動作する。
When the print image processing operation is executed by the
第1のサブプロセッサ200Aは、プロセッサの構成要素である図示しないメモリに格納されている所定のプログラムが読み出されて実行されることにより、図1に示すように、メインプロセッサ100の画像処理部120に代わって、第2および第3のサブプロセッサ200B,200Cで実行される画像処理実行機能の動作を制御する画像処理代理制御機能を実現するとともに、印刷イメージ画像データを生成する印刷イメージ画像データ生成機能を実現する。具体的には、割り込み信号経路INT1を介して割り込み信号を受信する割り込み処理部(「INT処理部」とも呼ぶ)210Aと、NES通信部220Aと、第2の通信経路NIOを介して実行する通信を制御するNIO通信部230Aと、NEM通信部240Aと、画像処理代理制御機能に対応する画像処理制御部(「IMGC」とも呼ぶ)250A、デコード制御部(「IDECC」とも呼ぶ)260A、および、画像補正制御部(「APFC」とも呼ぶ)270Aと、印刷イメージ生成機能に対応するレイアウト実行部280Aの各機能ブロックとして動作して、画像処理代理制御機能および印刷イメージ画像データ生成機能を実現する。
As shown in FIG. 1, the first sub-processor 200A reads and executes a predetermined program stored in a memory (not shown) that is a component of the processor. In place of 120, print image image data that realizes an image processing proxy control function that controls the operation of the image processing execution function executed by the second and third sub-processors 200B and 200C and generates print image image data Realize the generation function. Specifically, an interrupt processing unit (also referred to as an “INT processing unit”) 210A that receives an interrupt signal via the interrupt signal path INT1, a NES communication unit 220A, and a communication that is executed via the second communication path NIO.
第2のサブプロセッサ200Bは、プロセッサの構成要素である図示しないメモリに格納されている所定のプログラムが読み出されて実行されることにより、図1に示すように、選択した画像の画像ファイルに含まれている画像データが、例えば、JPEG形式の画像データである場合に、その画像データを展開処理してRGB色空間に基づく画像データ(「RGB画像データ」とも呼ぶ)に変換するデコード機能を実現する。具体的には、割り込み処理部210Bと、NES通信部220Bと、NIO通信部230Bと、NEM通信部240Bと、実際にデコード処理を実行するデコード実行部(「IDEC」とも呼ぶ)280Bの各機能ブロックとして動作する。
As shown in FIG. 1, the second sub-processor 200B reads and executes a predetermined program stored in a memory (not shown) that is a component of the processor, thereby generating an image file of the selected image. When the included image data is, for example, image data in JPEG format, a decoding function for developing the image data and converting it into image data based on the RGB color space (also referred to as “RGB image data”) is provided. Realize. Specifically, each function of the interrupt
第3のサブプロセッサ200Cは、プロセッサの構成要素である図示しないメモリに格納されている所定のプログラムが読み出されて実行されることにより、図1に示すように、デコード処理された画像データの表す画像の色補正処理や、シャープネス処理、ノイズ除去処理などの、画質を自動的に補正する画像補正機能を実現する。具体的には、割り込み処理部210Cと、NES通信部220Cと、NIO通信部230Cと、NEM通信部240Cと、実際に画像補正処理を実行する画像補正実行部(「APF」とも呼ぶ)280Cの各機能ブロックとして動作する。
As shown in FIG. 1, the third sub-processor 200C reads and executes a predetermined program stored in a memory (not shown) that is a component of the processor. An image correction function that automatically corrects image quality such as color correction processing, sharpness processing, and noise removal processing of the image to be expressed is realized. Specifically, the interrupt
以下では、各機能ブロックの動作について、さらに、詳細に説明する。 Hereinafter, the operation of each functional block will be described in more detail.
A2.1.印刷イメージ処理制御機能:
(1)ユーザインタフェース(UI)
図2は、ユーザインタフェース110で実行される印刷イメージ処理制御について示す説明図である。印刷イメージ処理制御が開始されると、まず、何らかのイベントの発生を監視する(ステップS102)。なお、イベントとしては、例えば、印刷イメージ処理は、画像処理部120による画像処理、レイアウト処理部130によるレイアウト処理の順に実行されるので、いずれかの処理の実行指示(要求)や、それに対する画像処理部120およびレイアウト処理部130からの応答、あるいは、ユーザが入力装置30により入力したキャンセルの指示等、がある。
A2.1. Print image processing control function:
(1) User interface (UI)
FIG. 2 is an explanatory diagram showing print image processing control executed by the
そして、何らかのイベントの発生があった場合には(ステップS102:YES)、そのイベントがキャンセルの指示であるか否か判断する(ステップS104)。 If any event occurs (step S102: YES), it is determined whether or not the event is a cancel instruction (step S104).
発生したイベントがキャンセルの指示でない場合には(ステップS104:NO)、発生したイベントに対応する処理を実行する(ステップS106)。例えば、画像処理部120が実行する画像処理の実行を指示するイベントである場合には、画像処理部120に対して、画像処理の実行を指示し、レイアウト処理部130が実行するレイアウト処理の実行を指示するイベントである場合には、レイアウト処理部130に対して、レイアウト処理の実行を指示する。
If the generated event is not a cancel instruction (step S104: NO), processing corresponding to the generated event is executed (step S106). For example, in the case of an event instructing execution of image processing executed by the
そして、実行している印刷イメージ処理制御の終了が指示されるまで、ステップS102からステップS106までの処理を繰り返し実行する(ステップS108:NO)。 Then, the process from step S102 to step S106 is repeatedly executed until the end of the print image process control being executed is instructed (step S108: NO).
ステップS104において、発生したイベントがキャンセルの指示であると判断された場合には(ステップS104:YES)、実行を指示している処理のキャンセルを要求する(ステップS150)。例えば、画像処理部120に対して画像処理の実行を指示しているならば、画像処理部120に対して実行を指示している処理のキャンセルを要求する。このとき、画像処理部120は、後述するようにして、割り込み発生部150から、各割り込み信号経路INT1〜INT3を介して、各サブプロセッサ200A〜200Cに対して、割り込み信号を送信する。
If it is determined in step S104 that the event that has occurred is a cancel instruction (step S104: YES), a request to cancel the process instructing execution is made (step S150). For example, if the
そして、第1のサブプロセッサ200Aから、第1の通信経路NES1を介して、実行を指示していた処理に対する応答(レスポンス)を監視する(ステップS112)。 Then, a response (response) to the process instructed to be executed is monitored from the first sub-processor 200A via the first communication path NES1 (step S112).
実行を指示していた処理に対する応答があった場合には(ステップS112:YES)、実行を指示していた処理のクローズ(終了)を要求する(ステップS114)。例えば、画像処理部120による画像処理の実行が指示されていたならば、画像処理部120に対して、その処理のクローズを指示する。
If there is a response to the process that has been instructed to execute (step S112: YES), a request to close (end) the process that has been instructed to execute (step S114). For example, if execution of image processing by the
そして、実行を指示していた処理のクローズ要求に対して、クローズ処理の終了の応答(レスポンス)を監視する(ステップS116)。 Then, in response to the close request of the process that has been instructed to execute, a response (response) of completion of the close process is monitored (step S116).
クローズ処理の終了の応答があった場合には(ステップS116:YES)、実行していたイメージ処理制御の動作を終了する。 If there is a response to end the close process (step S116: YES), the image processing control operation that has been executed is ended.
(2)画像処理部(DFT)
図3は、画像処理部120で実行される画像処理について示す説明図である。ユーザインタフェース110からの指示を受けて、画像処理が開始されると、まず、何らかのイベントの発生を監視する(ステップS122)。なお、イベントとしては、例えば、実際の画像処理は、第1のサブプロセッサ200Aの画像処理制御部250Aがメインプロセッサ100の画像処理部120に代わって、第2のサブプロセッサ200Bのデコード機能および第3のサブプロセッサ200Cの画像補正機能を制御することにより、実行されるので、ユーザインタフェース110からの画像処理の実行指示(要求)やクローズ処理の実行指示、この実行指示を第1の通信経路NES1を介して画像処理制御部250Aに対して伝えた後、第1の通信経路NES1を介して画像処理制御部250Aから伝えられる応答、あるいは、ユーザインタフェース110からのキャンセルの指示、等がある。
(2) Image processing unit (DFT)
FIG. 3 is an explanatory diagram showing image processing executed by the
そして、何らかのイベントの発生があった場合には(ステップS122:YES)、そのイベントがキャンセルの指示であるか否か判断する(ステップS124)。 If any event occurs (step S122: YES), it is determined whether or not the event is a cancel instruction (step S124).
発生したイベントがキャンセルの指示でない場合には(ステップS124:NO)、発生したイベントに対応する処理を実行する(ステップS126)。例えば、ユーザインタフェース110からの画像処理の実行を指示するイベントである場合には、第1の通信経路NES1を介して第1のサブプロセッサ200Aの画像処理制御部250Aに対して、画像処理の実行を指示する。
When the generated event is not a cancel instruction (step S124: NO), processing corresponding to the generated event is executed (step S126). For example, in the case of an event instructing execution of image processing from the
発生したイベントがキャンセルの指示である場合には(ステップS124:YES)、割り込み発生部150に対して、各割り込み信号経路INT1〜INT3を介して、各サブプロセッサ200A〜200Cに対して割り込み信号を送信するように指示する(ステップS128)。このとき、割り込み発生部150は、各割り込み信号経路INT1〜INT3を介して、各サブプロセッサ200A〜200Cに対して割り込み信号を送信する。
When the generated event is a cancel instruction (step S124: YES), an interrupt signal is sent to each of the
そして、画像処理部120は、ユーザインタフェース110から指示を受けて開始された処理が終了するまで、ステップS122からステップS128までの処理を繰り返す(ステップS130:NO)。
Then, the
(3)レイアウト処理部(OMT)
図4は、レイアウト処理部130で実行されるレイアウト処理について示す説明図である。ユーザインタフェース110からの指示を受けて、レイアウト処理が開始されると、まず、何らかのイベントの発生を監視する(ステップS142)。なお、イベントとしては、例えば、実際のレイアウト処理は、第1のサブプロセッサ200Aのレイアウト実行部280Aがメインプロセッサ100のレイアウト処理部130に代わって実行するので、ユーザインタフェース110からのレイアウト処理の実行指示やクローズ処理の実行指示、この実行指示を第1の通信経路NES1を介してレイアウト実行部280Aに対して伝えた後に、第1の通信経路NES1を介してレイアウト実行部280Aから伝えられる応答、あるいは、ユーザインタフェース110からのキャンセルの指示等、がある。
(3) Layout processing unit (OMT)
FIG. 4 is an explanatory diagram showing layout processing executed by the
そして、何らかのイベントの発生があった場合には(ステップS142:YES)、そのイベントがキャンセルの指示であるか否か判断する(ステップS144)。 If any event occurs (step S142: YES), it is determined whether or not the event is a cancel instruction (step S144).
発生したイベントがキャンセルの指示でない場合には(ステップS144:NO)、発生したイベントに対応する処理を実行する(ステップS146)。例えば、ユーザインタフェース110からのレイアウト処理の実行を指示するイベントである場合には、第1の通信経路NES1を介して第1のサブプロセッサ200Aのレイアウト実行部280Aに対して、レイアウト処理の実行を指示する。
When the generated event is not a cancel instruction (step S144: NO), processing corresponding to the generated event is executed (step S146). For example, in the case of an event instructing execution of layout processing from the
発生したイベントがキャンセルの指示である場合には(ステップS144:YES)、割り込み発生部150に対して、各割り込み信号経路INT1〜INT3を介して、各サブプロセッサ200A〜200Cに対して割り込み信号を送信するように指示する(ステップS148)。このとき、割り込み発生部150は、各割り込み信号経路INT1〜INT3を介して、各サブプロセッサ200A〜200Cに対して割り込み信号を送信する。
When the generated event is a cancel instruction (step S144: YES), an interrupt signal is sent to each of the
そして、レイアウト処理部130は、ユーザインタフェース110から指示を受けて開始された処理が終了するまで、ステップS142からステップS148までの処理を繰り返す(ステップS150:NO)。
The
A2.2.画像処理代理制御機能:
(1)割り込み処理部
図5は、割り込み処理部210Aで実行される割り込み処理について示す説明図である。割り込み処理部210Aは、メインプロセッサ100の割り込み発生部150から割り込み信号経路INT1を介して送信される割り込み信号の受信を監視する(ステップS202)。割り込み信号を受信すると(ステップS202:YES)、キャンセルフラグをオンにセットする(ステップS204)。そして、ステップS202に戻り、割り込み信号の受信の監視を繰り返す。
A2.2. Image processing proxy control function:
(1) Interrupt Processing Unit FIG. 5 is an explanatory diagram showing interrupt processing executed by the interrupt
(2)画像処理制御部(IMGC)
図6は、画像処理制御部250Aで実行される画像処理制御について示す説明図である。メインプロセッサ100の画像処理部120からの指示を受けて、画像処理制御が開始されると、まず、何らかのイベントの発生を監視する(ステップS212)。なお、イベントとしては、例えば、画像処理制御は、デコード制御部260Aによるデコード制御、画像補正制御部270Aによる画像補正制御の順に実行されるので、順に指示されるこれらの制御の実行指示やクローズ処理の実行指示、これに対してデコード制御部260Aおよび画像補正制御部270Aから伝えられる応答、画像処理部120から、第1の通信経路NES1を介して伝えられる指示、等がある。
(2) Image processing control unit (IMGC)
FIG. 6 is an explanatory diagram showing image processing control executed by the image
そして、何らかのイベントの発生があった場合には(ステップS212:YES)、キャンセルフラグがオンとなっているか否か判断する(ステップS214)。 If any event occurs (step S212: YES), it is determined whether or not the cancel flag is on (step S214).
まず、キャンセルフラグがオフである場合には(ステップS214:NO)、発生したイベントに対応する処理を実行する。例えば、画像処理部120からの指示や、デコード制御部260Aあるいは画像補正制御部270Aへの指示である場合には、対応する処理の実行を指示し、デコード制御部260Aあるいは画像補正制御部270Aからの応答である場合には、画像処理部120へ応答する。
First, when the cancel flag is off (step S214: NO), processing corresponding to the generated event is executed. For example, in the case of an instruction from the
そして、画像処理制御部250Aは、画像処理部120から指示を受けて開始された処理を終了するか否か判断し(ステップS218)、終了しない場合には(ステップS218:NO)、ステップS212に戻って、再び、イベントの発生を監視する。
Then, the image
一方、ステップS214において、キャンセルフラグがオンである場合には(ステップS214:YES)、発生したイベントが画像処理部(DFT)120から指示された画像処理のクローズの指示であるか否か判断する(ステップS224)。 On the other hand, if the cancel flag is on in step S214 (step S214: YES), it is determined whether the generated event is an instruction to close the image processing instructed from the image processing unit (DFT) 120. (Step S224).
発生したイベントが画像処理を終了するためのクローズ処理の実行指示である場合には(ステップS224:YES)、実行を指示しているデコード制御部(IDECC)260Aあるいは画像補正制御部(APFC)270Aに対して、クローズ処理の実行を指示し(ステップS226)、ステップS212に戻って、再び、イベントの発生を監視する。 If the event that has occurred is an instruction to execute the close process for ending the image processing (step S224: YES), the decode control unit (IDECC) 260A or the image correction control unit (APFC) 270A instructing the execution Is instructed to execute the close process (step S226), the process returns to step S212, and the occurrence of the event is monitored again.
一方、発生したイベントがクローズ処理の実行指示でない場合には(ステップS224:NO)、発生したイベントが処理の実行を指示しているデコード制御部260Aあるいは画像補正制御部270Aからのクローズ処理の実行に対する応答であるか否か判断する(ステップS232)。
On the other hand, if the event that has occurred is not an instruction to execute the close process (step S224: NO), execution of the close process from the decode control unit 260A or the image
発生したイベントがクローズ処理の実行に対する応答である場合には(ステップS232:YES)、実行を指示している全ての機能ブロックから応答があったか否か判断する(ステップS234)。 When the generated event is a response to the execution of the close process (step S232: YES), it is determined whether or not there is a response from all the functional blocks instructing the execution (step S234).
全ての機能ブロックから応答があった場合には(ステップS234:YES)、キャンセルフラグをオフに戻し(ステップS236)、画像処理部120に対して、第1の通信経路NES1を介して、指示されている画像処理の終了を示す応答を回答する(ステップS238)。そして、ステップS212に戻って、イベントの発生を監視する。一方、いずれかの応答がない場合には(ステップS234:NO)、そのままステップS212に戻って、イベントの発生を監視する。
If there is a response from all the functional blocks (step S234: YES), the cancel flag is turned off (step S236), and the
ステップS232において、発生したイベントがクローズ処理の実行に対する応答でなかった場合には(ステップS232:NO)、画像処理部(DFT)120からの実行指示であるか否か判断する(ステップS240)。 In step S232, if the event that has occurred is not a response to the execution of the close process (step S232: NO), it is determined whether or not it is an execution instruction from the image processing unit (DFT) 120 (step S240).
そして、発生したイベントが画像処理部120からの実行指示であった場合には(ステップS240:YES)、その指示を破棄して未処理とする(ステップS242)とともに、画像処理部120に対して、未処理で終了したことを示す応答を、第1の通信経路NES1を介して回答する(ステップS244)。そして、ステップS212に戻って、再び、イベントの発生を監視する。
If the generated event is an execution instruction from the image processing unit 120 (step S240: YES), the instruction is discarded and unprocessed (step S242), and the
一方、発生したイベントが画像処理部120からの実行指示でなかった場合には(ステップS240:NO)、さらに、発生したイベントがデコード制御部(IDECC)260Aあるいは画像補正制御部(APFC)270Aからの応答であるか否か判断する(ステップS246)。 On the other hand, when the generated event is not an execution instruction from the image processing unit 120 (step S240: NO), the generated event is further transmitted from the decode control unit (IDECC) 260A or the image correction control unit (APFC) 270A. It is determined whether or not the response is (step S246).
発生したイベントがデコード制御部260Aあるいは画像補正制御部270Aからの応答である場合には(ステップS246:YES)、画像処理部120に対して、第1の通信経路NES1を介して、その応答が有ったことを示す応答を回答する(ステップS248)、ステップS212に戻って、再び、イベントの発生を監視する。
When the generated event is a response from the decode control unit 260A or the image
一方、発生したイベントがデコード制御部260Aあるいは画像補正制御部270Aからの応答でなかった場合には(ステップS246:NO)、そのまま、ステップS212に戻って、再び、イベントの発生を監視する。
On the other hand, when the generated event is not a response from the decode control unit 260A or the image
(3)デコード制御部(IDECC)
デコード制御部260Aは、画像処理制御部250Aからの指示を、第2の通信経路NIOを介して、第2のサブプロセッサ200Bのデコード実行部280Bに伝え、デコード実行部280Bから伝えられた応答を、画像処理制御部250Aに受け渡す。
(3) Decode control unit (IDECC)
The decode control unit 260A transmits the instruction from the image
(4)画像補正制御部(APFC)
画像補正制御部270Aも、デコード制御部260Aと同様に、画像処理制御部250Aからの指示を、第2の通信経路NIOを介して、第3のサブプロセッサ200Cの画像補正実行部280Cに伝え、画像補正実行部280Cから伝えられた応答を、画像処理制御部250Aに受け渡す。
(4) Image correction controller (APFC)
Similarly to the decode control unit 260A, the image
A2.3.デコード機能:
(1)割り込み処理部
割り込み処理部210Bは、割り込み処理部210Aと同様に、メインプロセッサ100の割り込み発生部150から割り込み信号経路INT2を介して送信される割り込み信号の受信を監視し、割り込み信号を受信するとキャンセルフラグをオンにセットする。
A2.3. Decode function:
(1) Interrupt processing unit The interrupt
(2)デコード実行部(IDEC):
図7は、デコード実行部280Bで実行されるデコード処理について示す説明図である。デコード処理が開始されると、まず、何らかのイベントの発生の発生を監視する(ステップS252)。なお、イベントとしては、デコード制御部260Aから、第2の通信経路NIOを介して伝えられる実行指示やクローズ処理の実行指示、等がある。
(2) Decode execution unit (IDEC):
FIG. 7 is an explanatory diagram showing the decoding process executed by the
そして、何らかのイベントの発生があった場合には(ステップS252:YES)、キャンセルフラグがオンとなっているか否か判断する(ステップS254)。 If any event occurs (step S252: YES), it is determined whether or not the cancel flag is on (step S254).
まず、キャンセルフラグがオフである場合には(ステップS254:NO)、実際にデコード処理を実行する(ステップS256)。 First, when the cancel flag is off (step S254: NO), the decoding process is actually executed (step S256).
図8は、デコード実行処理について示す説明図である。デコード実行処理が開始されると、1単位処理ごとにデコード処理を実行する(ステップS256a)。そして、キャンセルフラグがオンとなっているか否か判断する(ステップS256b)。 FIG. 8 is an explanatory diagram showing the decoding execution process. When the decode execution process is started, the decode process is executed for each unit process (step S256a). Then, it is determined whether or not the cancel flag is turned on (step S256b).
キャンセルフラグがオンとなっていないならば(ステップS256b:NO)ならば、全てのデコード処理を終了するまで、ステップS256aのデコード処理を繰り返す(ステップS256c:NO)。そして、全てのデコード処理を終了した場合には(ステップS256c:YES)、デコード実行処理を終了して、図7のステップS258に進む。 If the cancel flag is not on (step S256b: NO), the decoding process of step S256a is repeated until all decoding processes are completed (step S256c: NO). If all the decoding processes have been completed (step S256c: YES), the decoding execution process is terminated and the process proceeds to step S258 in FIG.
一方、ステップS256bにおいて、キャンセルフラグがオンとなっていたならば(ステップS256b:YES)、このデコード実行処理を中止して、図7のステップS258に進む。 On the other hand, if the cancel flag is on in step S256b (step S256b: YES), the decoding execution process is stopped and the process proceeds to step S258 in FIG.
そして、ステップS258では、デコード制御部260Aに対して、第2の通信経路NIOを介して、指示された画像デコード処理の終了を示す応答を回答する。 In step S258, a response indicating the end of the instructed image decoding process is returned to the decoding control unit 260A via the second communication path NIO.
ステップS254において、キャンセルフラグがオンであると判断された場合には(ステップS254:YES)、さらに、発生したイベントが、デコード制御部260Aからのクローズ処理の実行指示であるか否か判断する(ステップS262)。 If it is determined in step S254 that the cancel flag is on (step S254: YES), it is further determined whether or not the event that has occurred is an instruction to execute a close process from the decode control unit 260A ( Step S262).
発生したイベントがクローズ処理の実行指示でない場合には(ステップS260:NO)、まだ実行していない未処理の実行指示であると判断して、その実行指示を未処理で終了し(ステップS264)、その実行指示に対する応答として、未処理の終了を示す応答を、デコード制御部260Aに対して、第2の通信経路NIOを介して回答する(ステップS266)。 If the event that has occurred is not an execution instruction for the close process (step S260: NO), it is determined that the event is an unprocessed execution instruction that has not yet been executed, and the execution instruction is ended unprocessed (step S264). As a response to the execution instruction, a response indicating an unprocessed end is returned to the decode control unit 260A via the second communication path NIO (step S266).
発生したイベントがクローズ処理の実行指示であった場合には(ステップS262:YES)、クローズ処理を実行し(ステップS272)、キャンセルフラグをオフに戻す(ステップS274)。そして、デコード制御部260Aに対して、第2の通信経路NIOを介して、クローズ処理の終了を示す応答を回答する(ステップS268)。 If the generated event is an instruction to execute the close process (step S262: YES), the close process is executed (step S272), and the cancel flag is turned off (step S274). Then, a response indicating the end of the closing process is returned to the decode control unit 260A via the second communication path NIO (step S268).
次に、デコード実行部280Bは、デコード制御部260Aから指示を受けて開始された処理を終了するか否か判断し(ステップS280)、終了しない場合には(ステップS280:NO)、ステップS212に戻って、再び、イベントの発生を監視する。
Next, the
A2.4.画像補正機能:
(1)割り込み処理部
割り込み処理部210Cも、割り込み処理部210Aと同様に、メインプロセッサ100の割り込み発生部150から割り込み信号経路INT3を介して送信される割り込み信号の受信を監視し、割り込み信号を受信するとキャンセルフラグをオンにセットする。
A2.4. Image correction function:
(1) Interrupt processing unit The interrupt
(2)画像補正実行部
画像補正実行部280Cで実行される画像補正処理は、デコード実行部280Bにおけるデコード処理のうち、実際のデコード処理(図7のステップS256)が、画像補正実行部280Cで実行される実際の画像補正実行処理に置き換えられる点、および、画像補正制御部270Aから、第2の通信経路NIOを介して実行指示が伝えられ、画像補正制御部270Aに対して、第2の通信経路NIOを介して応答が伝えられる点、を除いてデコード実行部280Bの処理手順と同じである。
(2) Image Correction Execution Unit The image correction process executed by the image correction execution unit 280C is the actual decoding process (step S256 in FIG. 7) of the decoding processes in the
A2.5.印刷イメージ画像データ生成機能:
印刷イメージ画像データ生成機能は、第1のサブプロセッサ200Aのレイアウト実行部280Aにより実現されるが、レイアウト実行部280Aで実行されるレイアウト処理は、デコード実行部280Bにおけるデコード処理のうち、実際のデコード処理(図7のステップS256)が、実行される実際のレイアウト処理に置き換えられる点、および、および、レイアウト処理部130から、第1の通信経路NES1を介して実行指示が伝えられ、レイアウト処理部130に対して、第1の通信経路NES1を介して応答が伝えられる点、を除いてデコード実行部280Bの処理手順と同じである。
A2.5. Print image image data generation function:
The print image image data generation function is realized by the
A3.印刷イメージ処理:
次に、マルチプロセッサシステム10のメインプロセッサ100および各サブプロセッサ200A〜200Cで実現される各機能により実行される印刷イメージ処理動作について、通常動作、キャンセル動作の順に説明する。
A3. Print image processing:
Next, print image processing operations executed by the functions realized by the
なお、以下の動作説明は、説明を容易にするために、図9に示すように、印刷媒体PB上に画像Aおよび画像Bが配置された印刷イメージ画像を、表示装置40上に表示する場合を前提とする。
In the following description of the operation, for ease of explanation, as shown in FIG. 9, a print image in which images A and B are arranged on the print medium PB is displayed on the
また、画像Aおよび画像Bの画像処理は、それぞれの画像を2つに区分したバンド単位で処理されることとする。具体的には、図9に示すように、画像Aは2つのバンド画像A−1,A−2に区分され、画像Bは2つのバンド画像B−1,B−2に区分される。 The image processing of the image A and the image B is performed in units of bands obtained by dividing each image into two. Specifically, as shown in FIG. 9, the image A is divided into two band images A-1 and A-2, and the image B is divided into two band images B-1 and B-2.
A3.1.通常動作:
図10および図11は、通常の印刷イメージ処理動作について示す説明図である。
A3.1. Normal operation:
10 and 11 are explanatory diagrams showing a normal print image processing operation.
まず、メインプロセッサ100のユーザインタフェース(UI)110は、画像処理部(DFT)120に対して、画像Aの画像処理実行を指示し、続いて、画像Bの画像処理の実行を指示する。
First, the user interface (UI) 110 of the
ユーザインタフェース110からの指示を受けた画像処理部120は、まず、第1のサブプロセッサ200Aの画像処理制御部(IMGC)250Aに対して、画像Aの1番目のバンド画像A−1の画像処理の実行を指示し、続いて、画像Bの1番目のバンド画像B−1の画像処理の実行を指示する。
Upon receiving an instruction from the
画像処理部120からの指示を受けた画像処理制御部250Aは、デコード制御部(IDECC)260Aに対して、画像Aの1番目のバンド画像A−1のデコード処理の実行を指示し、続けて、画像Bの1番目のバンド画像B−1のデコード処理の実行を指示する。
Receiving the instruction from the
画像処理制御部250Aからの指示を受けたデコード制御部260Aは、第2のサブプロセッサ200Bのデコード実行部(IDEC)280Bに対して、バンド画像A−1のデコード処理の実行を指示し、続けて、バンド画像B−1のデコード処理の実行を指示する。
Upon receiving the instruction from the image
デコード制御部260Aからの指示を受けたデコード実行部280Bは、指示を受けた順番に、デコード処理を実行する。ここでは、バンド画像A−1、バンド画像B−1の順にデコード処理の指示を受けているので、まず、バンド画像A−1のデコード処理を開始し、この処理を終了後、バンド画像B−1のデコード処理を開始する。
Receiving the instruction from the decoding control unit 260A, the
デコード実行部280Bは、最初に実行したバンド画像A−1のデコード処理を終了すると、デコード制御部260Aに対して、その処理の終了を応答し、待ち状態であったバンド画像B−1のデコード処理を開始する。
When the decoding process of the band image A-1 executed first is completed, the
このとき、バンド画像A−1のデコード終了応答を受けたデコード制御部260Aは、同様に、画像処理制御部250Aに対して、バンド画像A−1のデコード処理の終了を応答する。
At this time, the decoding control unit 260A that has received the decoding end response of the band image A-1 similarly responds the end of the decoding process of the band image A-1 to the image
バンド画像A−1のデコード処理終了応答を受けた画像処理制御部250Aは、画像補正制御部(APFC)270Aに対して、バンド画像A−1の画像補正処理の実行を指示する。
The image
画像処理制御部250Aからの指示を受けた画像補正制御部270Aは、第3のサブプロセッサ200Cの画像補正実行部(APF)280Cに対して、バンド画像A−1の画像補正処理の実行を指示する。
In response to the instruction from the image
画像補正制御部270Aからの指示を受けた画像補正実行部280Cは、指示を受けたバンド画像A−1の画像補正処理を開始する。
In response to the instruction from the image
また、バンド画像B−1のデコード処理を実行していたデコード実行部280Bは、その処理を終了すると、デコード制御部260Aに対して、バンド画像B−1のデコード処理の終了を応答する。
Further, when the
このとき、バンド画像B−1のデコード終了応答を受けたデコード制御部260Aは、同様に、画像処理制御部250Aに対して、バンド画像B−1のデコード処理の終了を応答する。
At this time, the decode control unit 260A that has received the decode end response of the band image B-1 similarly responds to the end of the decode process of the band image B-1 to the image
バンド画像B−1のデコード終了応答を受けた画像処理制御部250Aは、画像補正制御部270Aに対して、バンド画像B−1の画像補正処理の実行を指示する。
Receiving the decoding end response of the band image B-1, the image
画像処理制御部250Aからの指示を受けた画像補正制御部270Aは、画像補正実行部280Cに対して、バンド画像B−1の画像補正処理の実行を指示する。
In response to the instruction from the image
なお、このとき、画像補正制御部270Aからの指示を受けた画像補正実行部280Cは、まだ、バンド画像A−1の画像補正処理を実行しているので、バンド画像B−1の画像補正処理は開始されず、待ち状態となる。
At this time, the image correction execution unit 280C that has received an instruction from the image
そして、画像補正実行部280Cは、最初に実行したバンド画像A−1の画像補正処理を終了すると、画像補正制御部270Aに対して、その処理の終了を応答し、待ち状態であったバンド画像B−1の画像補正処理を開始する。
Then, when the image correction execution unit 280C completes the image correction process of the first performed band image A-1, the image
バンド画像A−1の画像補正処理終了応答を受けた画像補正制御部270Aは、画像処理制御部250Aに対して、バンド画像A−1の画像補正処理の終了を応答する。
The image
バンド画像A−1の画像補正処理の終了応答を受けた画像処理制御部250Aは、画像処理部120に対して、実行指示を受けたバンド画像A−1の画像処理の終了を応答する。
The image
バンド画像A−1の処理終了応答を受けた画像処理部120は、ユーザインタフェース110に対して、画像処理の実行指示を受けた画像Aのうちの、1番目のバンド画像A−1の画像処理の終了を応答する。
Upon receiving the processing end response of the band image A-1, the
バンド画像A−1の処理終了応答を受けたユーザインタフェース110は、レイアウト処理部(OMT)130に対して、画像処理を終了したバンド画像A−1のレイアウトの実行を指示する。
Upon receiving the processing end response of the band image A-1, the
レイアウト実行指示を受けたレイアウト処理部130は、第1のサブプロセッサ200Aのレイアウト実行部280Aに対して、バンド画像A−1のレイアウトの実行を指示する。
Upon receiving the layout execution instruction, the
このとき、指示を受けたレイアウト実行部280Aは、バンド画像A−1のレイアウト処理を開始する。
At this time, the
一方、この間に、バンド画像B−1の画像補正処理を実行していた画像補正実行部280Cがその処理を終了すると、画像補正制御部270Aに対して、その処理の終了を応答する。
On the other hand, when the image correction execution unit 280C that has executed the image correction process for the band image B-1 ends the process, the end of the process is returned to the image
バンド画像B−1の画像補正処理終了応答を受けた画像補正制御部270Aは、画像処理制御部250Aに対して、バンド画像B−1の画像補正処理の終了を応答する。
The image
バンド画像B−1の画像補正処理の終了応答を受けた画像処理制御部250Aは、画像処理部120に対して、実行指示を受けたバンド画像B−1の画像処理の終了を応答する。
The image
バンド画像B−1の処理終了応答を受けた画像処理部120は、ユーザインタフェース110に対して、画像処理の実行指示を受けた画像Bのうちの、1番目のバンド画像B−1の画像処理の終了を応答する。
Upon receiving the processing end response of the band image B-1, the
ユーザインタフェース110は、1番目のバンド画像A−1およびバンド画像B−1の画像処理の終了の応答を受けると、さらに、画像処理部120に対して、画像Aの画像処理の続きの実行を指示し、画像Bの画像処理の続きの実行を指示する。
When the
ユーザインタフェース110からの指示を受けた画像処理部120は、画像処理制御部250Aに対して、画像Aの2番目のバンド画像A−2の画像処理の実行を指示し、画像Bの2番目のバンド画像B−2の画像処理の実行を指示する。
Upon receiving the instruction from the
画像処理部120からの指示を受けた画像処理制御部250Aは、デコード制御部260Aに対して、画像Aの2番目のバンド画像A−2の画像処理の実行を指示し、画像Bの2番目のバンド画像B−2の画像処理の実行を指示する。
In response to the instruction from the
画像処理制御部250Aからの指示を受けたデコード制御部260Aは、デコード実行部280Bに対して、バンド画像A−2のデコード処理の実行を指示し、バンド画像B−2のデコード処理の実行を指示する。
Upon receiving the instruction from the image
デコード制御部260Aからの指示を受けたデコード実行部280Bは、まず、バンド画像A−2のデコード処理を開始し、この処理を終了後、バンド画像B−2のデコード処理を開始する。
Receiving the instruction from the decoding control unit 260A, the
デコード実行部280Bがデコード処理を実行している間に、レイアウト実行部280Aが実行していたバンド画像A−1のレイアウト処理を終えると、レイアウト実行部280Aは、レイアウト処理部130に対して、バンド画像A−1のレイアウト終了を応答する。
When the
バンド画像A−1のレイアウト終了応答を受けたレイアウト処理部130は、ユーザインタフェース110に対して、レイアウト処理の実行指示を受けたバンド画像A−1のレイアウト処理の終了を応答する。
Upon receiving the layout end response of the band image A-1, the
バンド画像A−1のレイアウト処理終了応答を受けたユーザインタフェース110は、レイアウト処理部130に対して、画像処理を終了したバンド画像B−1のレイアウトの実行を指示する。
The
レイアウトの実行指示を受けたレイアウト処理部130は、レイアウト実行部280Aに対して、バンド画像B−1のレイアウトの実行を指示する。
Receiving the layout execution instruction, the
このとき、指示を受けたレイアウト実行部280Aは、バンド画像B−1のレイアウト処理を開始する。
At this time, the
そして、レイアウト実行部280Aは、実行していたバンド画像B−1のレイアウト処理を終えると、レイアウト処理部130に対して、バンド画像B−1のレイアウト終了を応答する。
Then, when the layout processing of the band image B-1 that has been executed is completed, the
バンド画像B−1のレイアウト終了応答を受けたレイアウト処理部130は、ユーザインタフェース110に対して、レイアウト処理の実行指示を受けたバンド画像B−1の処理の終了を応答する。
Upon receiving the layout end response of the band image B-1, the
レイアウト実行部280Aがレイアウト処理を実行している間に、デコード実行部280Bが実行していた画像Aの2番目のバンド画像A−2のデコード処理を終了すると、デコード実行部280Bは、デコード制御部260Aに対して、その処理の終了を応答し、待ち状態であった画像Bの2番目のバンド画像B−2のデコード処理を開始する。
When the decoding processing of the second band image A-2 of the image A that has been executed by the
このとき、バンド画像A−2のデコード終了応答を受けたデコード制御部260Aは、画像処理制御部250Aに対して、バンド画像A−2のデコード処理の終了を応答する。
At this time, the decoding control unit 260A that has received the decoding end response of the band image A-2 responds to the image
バンド画像A−2のデコード終了応答を受けた画像処理制御部250Aは、画像補正制御部270Aに対して、バンド画像A−2の画像補正処理の実行を指示する。
The image
画像処理制御部250Aからの指示を受けた画像補正制御部270Aは、画像補正実行部280Cに対して、バンド画像A−2の画像補正処理の実行を指示する。
Receiving the instruction from the image
画像補正制御部270Aからの指示を受けた画像補正実行部280Cは、指示を受けたバンド画像A−2の画像補正処理を開始する。
In response to the instruction from the image
画像補正実行部280Cは、実行したバンド画像A−2の画像補正処理を終了すると、画像補正制御部270Aに対して、その処理の終了を応答し、待ち状態であったバンド画像B−2の画像補正処理を開始する。
When the image correction execution unit 280C completes the performed image correction process for the band image A-2, the image
バンド画像A−2の画像補正処理終了応答を受けた画像補正制御部270Aは、画像処理制御部250Aに対して、バンド画像A−2の画像補正処理の終了を応答する。
The image
バンド画像A−2の画像補正処理の終了応答を受けた画像処理制御部250Aは、画像処理部120に対して、実行指示を受けたバンド画像A−2の画像処理の終了を応答する。
The image
バンド画像A−2の処理終了応答を受けた画像処理部120は、ユーザインタフェース110に対して、画像処理の実行指示を受けた画像Aのうちの、2番目のバンド画像A−2の画像処理の終了を応答する。
Upon receiving the processing end response of the band image A-2, the
バンド画像A−2の処理終了応答を受けたユーザインタフェース110は、レイアウト処理部130に対して、画像処理を終了したバンド画像A−2のレイアウトの実行を指示する。
Upon receiving the processing end response of the band image A-2, the
レイアウト実行指示を受けたレイアウト処理部130は、レイアウト実行部280Aに対して、バンド画像A−2のレイアウトの実行を指示する。
Receiving the layout execution instruction, the
このとき、指示を受けたレイアウト実行部280Aは、バンド画像A−2のレイアウト処理を開始する。
At this time, the
レイアウト実行部280Aは、実行していたバンド画像A−2のレイアウト処理を終えると、レイアウト処理部130に対して、バンド画像A−2のレイアウト終了を応答する。
When the layout processing of the band image A-2 is completed, the
バンド画像A−2のレイアウト終了応答を受けたレイアウト処理部130は、ユーザインタフェース110に対して、レイアウト処理の実行指示を受けたバンド画像A−2の処理の終了を応答する。
Upon receiving the layout end response of the band image A-2, the
一方、この間に、バンド画像B−2のデコード処理を実行していたデコード実行部280Bがその処理を終了すると、デコード制御部260Aに対して、その処理の終了を応答する
On the other hand, when the
このとき、バンド画像B−2のデコード終了応答を受けたデコード制御部260Aは、その応答を画像処理制御部250Aに応答する。
At this time, the decoding control unit 260A that has received the decoding end response of the band image B-2 returns the response to the image
バンド画像B−2のデコード終了応答を受けた画像処理制御部250Aは、画像補正制御部270Aに対して、バンド画像B−2の画像補正処理の実行を指示する。
The image
画像処理制御部250Aからの指示を受けた画像補正制御部270Aは、画像補正実行部280Cに対して、バンド画像B−2の画像補正処理の実行を指示する。
In response to the instruction from the image
実行指示を受けた画像補正実行部280Cは、バンド画像B−2の画像補正処理を開始する。そして、画像補正実行部280Cは、実行していたバンド画像B−2の画像補正処理を終了すると、画像補正制御部270Aに対して、その処理の終了を応答する。
Receiving the execution instruction, the image correction execution unit 280C starts image correction processing of the band image B-2. When the image correction execution unit 280C completes the image correction process for the band image B-2 that has been executed, the image correction execution unit 280C responds to the image
バンド画像B−2の画像補正処理終了応答を受けた画像補正制御部270Aは、画像処理制御部250Aに対して、バンド画像B−2の画像補正処理の終了を応答する。
The image
バンド画像B−2の画像補正処理の終了応答を受けた画像処理制御部250Aは、画像処理部120に対して、実行指示を受けたバンド画像B−2の画像処理の終了を応答する。
The image
バンド画像B−2の画像処理終了応答を受けた画像処理部120は、ユーザインタフェース110に対して、画像処理の実行指示を受けた画像Bのうちの、2番目のバンド画像B−2の画像処理の終了を応答する。
Upon receiving the image processing end response of the band image B-2, the
バンド画像B−2の画像処理終了応答を受けたユーザインタフェース110は、レイアウト処理部130に対して、画像処理を終了したバンド画像B−2のレイアウトの実行を指示する。
Upon receiving the image processing end response of the band image B-2, the
レイアウト実行指示を受けたレイアウト処理部130は、レイアウト実行部280Aに対して、バンド画像B−2のレイアウトの実行を指示する。
Receiving the layout execution instruction, the
このとき、指示を受けたレイアウト実行部280Aは、バンド画像B−2のレイアウト処理を開始する。
At this time, the
レイアウト実行部280Aは、実行していたバンド画像B−2のレイアウト処理を終えると、レイアウト処理部130に対して、バンド画像B−2のレイアウト終了を応答する。
When the layout processing of the band image B-2 that has been executed is completed, the
バンド画像B−2のレイアウト終了応答を受けたレイアウト処理部130は、ユーザインタフェース110に対して、レイアウト処理の実行指示を受けたバンド画像B−2の処理の終了を応答する。
Upon receiving the layout end response of the band image B-2, the
以上のようにして、画像Aおよび画像Bを印刷媒体PB上に配置した状態を示す印刷イメージ画像データを生成するための印刷イメージ処理が実行される。なお、上記説明中に、異なった機能ブロックにおいて実行される処理への指示や応答の順番は、説明の便宜上示された一例であって、これに限定されるものではなく、処理の規模やプロセッサの処理能力に応じて、適宜変化するものである。 As described above, the print image processing for generating the print image image data indicating the state in which the image A and the image B are arranged on the print medium PB is executed. In the above description, the order of instructions and responses to processing executed in different functional blocks is an example shown for convenience of description, and is not limited to this. Depending on the processing capability of the above, it will change appropriately.
A3.2.キャンセル終了動作:
図12およぶ図13は、キャンセル終了動作について示す説明図である。図は、キャンセル終了動作の一例として、図11に示した通常動作において、ユーザインタフェース110が、画像処理部120に対して、画像Aおよび画像Bの続きの画像処理実行を指示した後に、ユーザが入力装置30から処理のキャンセルを指示した場合について示している。
A3.2. Cancel end action:
12 and 13 are explanatory diagrams showing the cancel end operation. In the normal operation shown in FIG. 11, the
ユーザからキャンセルが指示されると、ユーザインタフェース(UI)110は、画像処理部(DFT)120およびレイアウト処理部(OMT)130に対しては、それぞれで実行される処理のキャンセルを指示する。 When cancellation is instructed by the user, the user interface (UI) 110 instructs the image processing unit (DFT) 120 and the layout processing unit (OMT) 130 to cancel the processing executed in each.
キャンセル指示を受けた画像処理部120およびレイアウト処理部130は、それぞれ対応する処理の実行を指示している場合には、それぞれ対応する機能ブロックに対して、キャンセルを指示する。なお、このキャンセルの指示は、具体的には、上述したように、それぞれ対応する機能ブロックを含むサブプロセッサに対して、キャンセルを示す割り込み信号を送信することにより、伝えられる。ここでは、図11に示すように、画像Aの1番目のバンド画像A−1のレイアウト処理および2番目のバンド画像A−2のデコード処理が実行されており、画像Bの2番目のバンド画像B−2のデコード処理が待ち状態となっている。この場合には、割り込み信号経路INT1〜INT3を介して、第1のサブプロセッサ200Aの割り込み処理部210A、第2のサブプロセッサ200Bの割り込み処理部210B、および、第3のサブプロセッサ200Cの割り込み処理部210Cに対して、割り込み信号が送信されることにより、それぞれのキャンセルフラグがオンとなり、第1のサブプロセッサ200Aの画像処理制御部(IMGC)250A、デコード制御部(IDECC)260A、画像補正制御部(APFC)270A、および、レイアウト実行部(LAYOUT)280Aと、第2のサブプロセッサ200Bのデコード実行部(IDEC)280Bと、第3のサブプロセッサ200Cの画像補正実行部(APF)280Cに、それぞれ、キャンセルの指示が伝えられる。
The
そして、ユーザインタフェース110は、画像処理部120に対して、実行を指示していた画像処理のクローズ処理の実行を指示する。指示を受けた画像処理部120は、画像処理制御部250Aに対して、画像処理のクローズ処理の実行を指示する。
Then, the
ここで、デコード実行部280Bは、キャンセルフラグがオンとなると、実行していた画像Aの2番目のバンド画像A−2のデコード処理を中止し、デコード制御部260Aに対して、バンド画像A−2のデコード処理の終了を応答する。また、デコード実行部280Bは、待ち状態であった画像Bの2番目のバンド画像B−2のデコード処理を破棄して未処理のまま終了し、デコード制御部260Aに対して、バンド画像B−2のデコード処理を未処理で終了したことを応答する。
Here, when the cancel flag is turned on, the
そして、バンド画像A−2およびバンド画像B−2のデコード処理終了応答を受けたデコード制御部260Aは、それらの応答をそのまま画像処理制御部250Aに応答する。
Then, the decoding control unit 260A that has received the decoding processing end response for the band image A-2 and the band image B-2 returns the response to the image
バンド画像A−2およびバンド画像B−2のデコード処理終了応答を受けた画像処理制御部250Aは、画像処理部120に対して、バンド画像A−2およびバンド画像B−2の画像処理終了を応答するとともに、デコード制御部260Aに対して、実行している処理を終了するためのクローズ処理の実行を指示する。
The image
バンド画像A−2およびバンド画像B−2の画像処理終了応答を受けた画像処理部120は、ユーザインタフェースに対して、実行を指示した画像Aおよび画像Bの画像処理の終了を応答する。
The
画像処理制御部250Aからクローズ処理の実行指示を受けたデコード制御部260Aは、デコード実行部280Bに対して、同様に、実行している処理を終了するためのクローズ処理の実行を指示する。クローズ処理の実行指示を受けたデコード実行部280Bは、キャンセルフラグをオフにして、デコード制御部260Aに対して、クローズ処理の終了を応答する。クローズ処理の終了応答を受けたデコード制御部260Aは、クローズ処理の終了を画像処理制御部250Aに対して応答する。
The decode control unit 260A that has received the close process execution instruction from the image
デコード制御部260Aからクローズ処理の終了応答を受けた画像処理制御部250Aは、キャンセルフラグをオフにして、画像処理部120に対して、画像処理のクローズ処理の終了を応答する。画像処理のクローズ処理の終了応答を受けた画像処理部120は、ユーザインタフェース110に対して、画像処理のクローズ処理の終了を応答する。
The image
また、ユーザインタフェース110は、レイアウト処理部130に対して、実行を指示していたレイアウト処理を終了するためのクローズ処理の実行を指示する。指示を受けたレイアウト処理部130は、レイアウト実行部280Aに対して、レイアウト処理のクローズ処理の実行を指示する。
In addition, the
ここで、レイアウト実行部280Aは、キャンセルフラグがオンであるので、実行していた画像Aの1番目のバンド画像A−1のレイアウト処理を中止して、レイアウト処理部130に対して、バンド画像A−1のレイアウト処理の終了を応答し、キャンセルフラグをオフにして、レイアウト処理部130に対して、クローズ処理の終了を応答する。
Here, since the cancel flag is on, the
バンド画像A−1のレイアウト処理の終了応答を受けたレイアウト処理部130は、ユーザインタフェース110に対して、実行を指示したバンド画像A−1のレイアウト処理の終了を応答する。そして、レイアウト処理のクローズ処理の終了応答を受けたレイアウト処理部130は、ユーザインタフェース110に対して、レイアウト処理のクローズ処理の終了を応答する。
The
以上のようにして、印刷イメージ処理実行中にキャンセル動作が実行される。なお、上記説明中に、異なった機能ブロックにおいて実行される処理への指示や応答の順番は、説明の便宜上示された一例であって、これに限定されるものではなく、処理の規模やプロセッサの処理能力に応じて、適宜変化するものである。 As described above, the cancel operation is executed during execution of the print image processing. In the above description, the order of instructions and responses to processing executed in different functional blocks is an example shown for convenience of description, and is not limited to this. Depending on the processing capability of the above, it will change appropriately.
A4.効果:
以上説明したように、上記実施例のマルチプロセッサでは、メインプロセッサとサブプロセッサとの間に、割り込み信号経路が設けられており、実行されている処理のキャンセルの指示がなされた場合に、その割り込み信号経路を介して割り込み信号を送信することができる。そして、割り込み信号を受信したサブプロセッサは、指示を受けて実行中の処理を中止し、その指示に対する応答を返すことができる。また、待ち状態の指示を破棄して、その処理を見処理で終了し、その指示に対する応答を返すことができる。
A4. effect:
As described above, in the multiprocessor of the above embodiment, an interrupt signal path is provided between the main processor and the sub processor, and when an instruction to cancel the processing being performed is given, the interrupt is performed. An interrupt signal can be transmitted through the signal path. The sub-processor that has received the interrupt signal can stop the processing being executed in response to the instruction and return a response to the instruction. In addition, it is possible to discard the instruction in the waiting state, end the process with the process, and return a response to the instruction.
従って、上記実施例のマルチプロセッサでは、高速なキャンセル処理を実現することが可能である。 Therefore, the multiprocessor of the above embodiment can realize high-speed cancellation processing.
B.変形例:
以上、本発明の実施の形態について説明したが、本発明はこのような実施の形態になんら限定されるものではなく、その要旨を逸脱しない範囲において種々の態様にて実施することが可能である。例えば、以下のような変形が可能である。
B. Variations:
As mentioned above, although embodiment of this invention was described, this invention is not limited to such embodiment at all, In the range which does not deviate from the summary, it is possible to implement in various aspects. . For example, the following modifications are possible.
B1.変形例1:
上記実施例では、マルチプロセッサを構成する複数のプロセッサとして、1つのメインプロセッサ100と3つのサブプロセッサ200A〜200Cのみを示したが、これに限定されるものではなく、複数のプロセッサを備えるマルチプロセッサに適用可能である。
B1. Modification 1:
In the above-described embodiment, only one
B2.変形例2:
上記実施例では、3つのサブプロセッサ200A〜200Cの間をループ状に形成されている第2の通信経路NIOを介して接続している場合を例に示しているが、第1のサブプロセッサ200Aと第2のサブプロセッサ200Bとの間、および、第1のサブプロセッサ200Aと第3のサブプロセッサ200Cとの間を、それぞれ個別に設けられた専用の通信経路で接続するようにしてもよい。さらに、第2のサブプロセッサ200Bと第3のサブプロセッサ200Cとの間を専用に設けられた通信経路で接続するようにしてよい。
B2. Modification 2:
In the above embodiment, the case where the three sub-processors 200A to 200C are connected via the second communication path NIO formed in a loop shape is shown as an example, but the first sub-processor 200A is shown. And the second sub-processor 200B, and the first sub-processor 200A and the third sub-processor 200C may be connected by dedicated communication paths provided individually. Further, the second sub-processor 200B and the third sub-processor 200C may be connected by a dedicated communication path.
また、3つのサブプロセッサ200A〜200Cの間を共通バス形式の通信経路で接続されるようにしてもよい。 Further, the three sub-processors 200A to 200C may be connected by a common bus type communication path.
また、メインプロセッサ100と3つのサブプロセッサ200A〜200Cとの間を、それぞれ個別に設けられた専用の第1の通信経路NES1〜NES3で接続している場合を例に示しているが、これらを共通バス形式の通信経路で接続されるようにしてもよい。
Further, the case where the
また、メモリコントローラ300とメインプロセッサ100および3つのサブプロセッサ200A〜200Cとの間を、それぞれ個別に設けられた専用の第3の通信経路NEM0〜NME3で接続している場合を例に示しているが、これらを共通バス形式の通信経路で接続されるようにしてもよい。
Further, an example is shown in which the
すなわち、各プロセッサおよびメモリコントローラのそれぞれの間を接続する通信経路の構成は、それぞれの間を接続して、それぞれの要求や応答を通信可能なものであれば、どのような形態であってもよい。 In other words, the configuration of the communication path that connects the processors and the memory controller may be in any form as long as they can connect each other and communicate their requests and responses. Good.
10...マルチプロセッサシステム
20...RAM
30...入力装置
40...表示装置
50...記憶装置
100...メインプロセッサ
110...ユーザインタフェース
120...画像処理部
130...レイアウト処理部
150...割り込み発生部
160...NES通信部
170...NEM通信部
200A...第1のサブプロセッサ
200B...第2のサブプロセッサ
200C...第3のサブプロセッサ
210A...割り込み処理部
210B...割り込み処理部
210C...割り込み処理部
220A...NES通信部
220B...NES通信部
220C...NES通信部
230A...NIO通信部
230B...NIO通信部
230C...NIO通信部
240A...NEM通信部
240B...NEM通信部
240C...NEM通信部
250A...画像処理制御部
260A...デコード制御部
270A...画像補正制御部
280A...レイアウト実行部
280B...デコード実行部
280C...画像補正実行部
300...メモリコントローラ
INT...割り込み信号経路
INT1〜INT3...割り込み信号経路
NES...第1の通信経路
NES1〜NES3...第1の通信経路
NIO...第2の通信経路
NEM...第3の通信経路
NEM0〜NEM3...第3の通信経路
10 ...
30 ...
Claims (5)
前記複数のプロセッサのうちの第1のプロセッサと少なくとも1つの第2のプロセッサとの間に、
前記第1のプロセッサから前記第2のプロセッサへ第1の処理要求信号を伝送するとともに、前記第2のプロセッサから前記第1のプロセッサへ前記第1の処理要求に対する第1の処理応答信号を伝送する、ために設けられた第1の通信経路と、
前記第1の処理要求に従って前記第2のプロセッサで実行される処理の中止を示す第1の割り込み信号を伝送するために設けられた専用の第1の割り込み信号経路と、を備えており、
前記第1のプロセッサは、前記第2のプロセッサで実行される処理のキャンセルを示すキャンセル信号が入力された場合に、前記第2のプロセッサに対して、前記第1の処理要求に従って実行されている実行中の処理のキャンセルを示す前記第1の割り込み信号を、前記第1の割り込み信号経路を介して送信し、
前記第2のプロセッサは、前記第1の割り込み信号を受信した場合において、前記第1の処理要求に従って実行されている実行中の処理を中止して、前記実行中の処理の終了を示す前記第1の処理応答信号を、前記第1の通信経路を介して送信する、
ことを特徴とするマルチプロセッサシステム。 A multiprocessor system comprising a plurality of processors,
Between a first processor and at least one second processor of the plurality of processors,
A first processing request signal is transmitted from the first processor to the second processor, and a first processing response signal is transmitted from the second processor to the first processor in response to the first processing request. A first communication path provided for, and
A dedicated first interrupt signal path provided for transmitting a first interrupt signal indicating suspension of processing executed by the second processor in accordance with the first processing request,
The first processor is executed in accordance with the first processing request to the second processor when a cancel signal indicating cancellation of the processing executed by the second processor is input . Sending the first interrupt signal indicating cancellation of the process being executed via the first interrupt signal path;
When the second processor receives the first interrupt signal, the second processor stops the process being executed according to the first process request, and indicates the end of the process being executed. 1 processing response signal is transmitted via the first communication path;
A multiprocessor system characterized by that.
前記第2のプロセッサは、前記第1のプロセッサから前記第2のプロセッサに対して、複数の前記第1の処理要求が発生している状態で、前記第1の割り込み信号を受信した場合には、第1番目の前記第1の処理要求に従って実行されている実行中の処理を中止して、前記実行中の処理の終了を示す第1番目の前記第1の処理応答信号を、前記第1の通信経路を介して送信するとともに、第2番目以降の前記第1の処理要求に従って実行すべき未実行の処理を破棄して、前記実行すべき処理を未処理で終了したことを示す第2番目以降の前記第1の処理応答信号を、前記第1の通信経路を介して送信する、
ことを特徴とするマルチプロセッサシステム。 A multiprocessor system according to claim 1, wherein
When the second processor receives the first interrupt signal in a state where a plurality of the first processing requests are generated from the first processor to the second processor. The first process response signal indicating the end of the process being executed is canceled by stopping the process being executed being executed according to the first process request. 2 indicating that the unexecuted process to be executed in accordance with the second and subsequent first process requests is discarded and the process to be executed is terminated unprocessed. The first processing response signal after the th is transmitted via the first communication path,
A multiprocessor system characterized by that.
前記複数のプロセッサのうちの前記第2のプロセッサと少なくとも1つの第3のプロセッサとの間に、
前記第2のプロセッサから前記第3のプロセッサへ第2の処理要求信号を伝送するとともに、前記第3のプロセッサから前記第2のプロセッサへ前記第2の処理要求に対する第2の処理応答信号を伝送する、ために設けられた第2の通信経路と、
前記第2の処理要求に従って前記第3のプロセッサで実行される処理の中止を示す第2の割り込み信号を伝送するために、前記第1のプロセッサとの間に設けられた専用の第2の割り込み信号経路と、を備えており、
前記第1のプロセッサは、前記第2のプロセッサおよび第3のプロセッサで実行される処理のキャンセルを示すキャンセル信号が入力された場合に、前記第2のプロセッサに対して、前記第1の割り込み信号を、前記第1の割り込み信号経路を介して送信するとともに、前記第3のプロセッサに対して、前記第2の割り込み信号を、前記第2の割り込み信号経路を介して送信し、
前記第3のプロセッサは、前記第2の割り込み信号を受信した場合において、前記第2の処理要求に従って実行されている実行中の処理を中止して、前記実行中の処理の終了を示す前記第2の処理応答信号を、前記第2の通信経路を介して送信し、
前記第2のプロセッサは、前記第1の割り込み信号を受信した場合において、前記第3のプロセッサから前記第2の処理応答信号を受信すると、前記第1の処理要求に従って実行されている実行中の処理を中止して、前記実行中の処理の終了を示す前記第1の処理応答信号を、前記第1の通信経路を介して送信する、
ことを特徴とするマルチプロセッサシステム。 The multiprocessor system according to claim 1 or 2, further comprising:
Between the second processor and the at least one third processor of the plurality of processors,
A second processing request signal is transmitted from the second processor to the third processor, and a second processing response signal for the second processing request is transmitted from the third processor to the second processor. A second communication path provided for, and
A dedicated second interrupt provided between the first processor and the second processor for transmitting a second interrupt signal indicating suspension of processing executed by the third processor in accordance with the second processing request. A signal path,
When the first processor receives a cancel signal indicating cancellation of processing executed by the second processor and the third processor, the first processor sends the first interrupt signal to the second processor. Is transmitted through the first interrupt signal path, and the second interrupt signal is transmitted to the third processor through the second interrupt signal path.
When the third processor receives the second interrupt signal, the third processor stops the process being executed according to the second process request, and indicates the end of the process being executed. 2 processing response signals are transmitted via the second communication path,
When the second processor receives the first interrupt signal and receives the second processing response signal from the third processor, the second processor is executing in accordance with the first processing request. Aborting the process and transmitting the first process response signal indicating the end of the process being executed via the first communication path;
A multiprocessor system characterized by that.
前記第3のプロセッサは、前記第2のプロセッサから前記第1のプロセッサに対して、複数の前記第2の処理要求が発生している状態で、前記第2の割り込み信号を受信した場合には、第1番目の前記第2の処理要求に従って実行されている実行中の処理を中止して、前記実行中の処理の終了を示す第1番目の前記第2の処理応答信号を、前記第2の通信経路を介して送信するとともに、第2番目以降の前記第2の処理要求に従って実行すべき未実行の処理を破棄して、前記実行すべき処理を未処理で終了したことを示す第2番目以降の前記第2の応答処理信号を、前記第2の通信経路を介して送信する、
ことを特徴とするマルチプロセッサシステム。 The multiprocessor system according to claim 3, wherein
When the third processor receives the second interrupt signal in a state where a plurality of the second processing requests are generated from the second processor to the first processor, , The processing being executed being executed in accordance with the first processing request of the first is stopped, and the second processing response signal indicating the end of the processing being executed is sent to the second processing response signal. 2 indicating that the process to be executed has been terminated unprocessed by discarding the unexecuted process to be executed in accordance with the second and subsequent second processing requests. The second response processing signal after the th is transmitted via the second communication path,
A multiprocessor system characterized by that.
前記マルチプロセッサシステムは、1つの半導体基板上に集積化されている、
ことを特徴とするマルチプロセッサシステム。 A multiprocessor system according to any one of claims 1 to 4, wherein
The multiprocessor system is integrated on one semiconductor substrate;
A multiprocessor system characterized by that.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2005334291A JP4618112B2 (en) | 2005-11-18 | 2005-11-18 | Multiprocessor system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2005334291A JP4618112B2 (en) | 2005-11-18 | 2005-11-18 | Multiprocessor system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2007140935A JP2007140935A (en) | 2007-06-07 |
| JP4618112B2 true JP4618112B2 (en) | 2011-01-26 |
Family
ID=38203707
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2005334291A Expired - Fee Related JP4618112B2 (en) | 2005-11-18 | 2005-11-18 | Multiprocessor system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4618112B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6833491B2 (en) * | 2016-12-12 | 2021-02-24 | キヤノン株式会社 | Information processing device |
| JP7294226B2 (en) * | 2020-04-24 | 2023-06-20 | 株式会社デンソー | electronic controller |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09114607A (en) * | 1995-10-16 | 1997-05-02 | Brother Ind Ltd | Data transmission / reception system |
| JP3488381B2 (en) * | 1998-05-29 | 2004-01-19 | 富士通株式会社 | Job management method, job management device and job management system |
| JP2001260433A (en) * | 2000-03-16 | 2001-09-25 | Seiko Epson Corp | Printer and printer control method |
-
2005
- 2005-11-18 JP JP2005334291A patent/JP4618112B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2007140935A (en) | 2007-06-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2014149605A (en) | Image processing apparatus, system and method | |
| JP7554592B2 (en) | Image processing device, control method, and program | |
| JP2012119751A (en) | Image processing device, image processing device control method, and program | |
| JP2017130763A (en) | Remote support system, image forming apparatus, external terminal, control method therefor and program | |
| JP5728439B2 (en) | Data storage destination setting system, information processing apparatus, and data storage destination setting program | |
| JP4618112B2 (en) | Multiprocessor system | |
| CN104160371B (en) | task processing system and task processing method | |
| JP2014176026A (en) | Relay device and fax transmission/reception program | |
| JP2011253264A (en) | Communication device and computer program | |
| JP4128762B2 (en) | Image processing apparatus and image processing system | |
| JP2012038076A (en) | Information processing device, job processing system, job transmission path control method and program, and recording medium | |
| JP2024008594A (en) | Printing devices, control methods, and programs | |
| US20150189499A1 (en) | Communication apparatus, mobile device and storage medium | |
| JP2018176598A (en) | Printer and program | |
| JP4250047B2 (en) | Image forming apparatus | |
| JP4848212B2 (en) | Image forming apparatus, image forming method, and image forming program | |
| JP7558681B2 (en) | Image forming apparatus, control method for image forming apparatus, and program | |
| JP2014103562A (en) | Operation terminal, information processing system using operation terminal, information processing method, program | |
| US9667607B2 (en) | Control apparatus and communications control method | |
| JP4424239B2 (en) | Image forming apparatus | |
| JP2007013280A (en) | Image scanner and method of setting read condition thereof | |
| JP2026000803A (en) | Information processing device, control method for information processing device, and program therefor | |
| JP4362889B2 (en) | Network scanner control method and apparatus | |
| JP4258251B2 (en) | Status notification receiver | |
| JP2025148108A (en) | Information processing system, program, and control method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080917 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100119 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100302 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100428 |
|
| 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: 20100928 |
|
| 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: 20101011 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131105 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4618112 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| LAPS | Cancellation because of no payment of annual fees |