JP2021022055A - Image forming apparatus and data transfer method - Google Patents
Image forming apparatus and data transfer method Download PDFInfo
- Publication number
- JP2021022055A JP2021022055A JP2019137053A JP2019137053A JP2021022055A JP 2021022055 A JP2021022055 A JP 2021022055A JP 2019137053 A JP2019137053 A JP 2019137053A JP 2019137053 A JP2019137053 A JP 2019137053A JP 2021022055 A JP2021022055 A JP 2021022055A
- Authority
- JP
- Japan
- Prior art keywords
- execution
- data
- buffer
- data transfer
- processing
- 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.)
- Pending
Links
Landscapes
- Bus Control (AREA)
Abstract
Description
本発明は、画像形成装置、及び画像形成装置で実行されるデータ転送方法に関する。 The present invention relates to an image forming apparatus and a data transfer method executed by the image forming apparatus.
シリアルバスに接続されたスレーブデバイスごとに当該シリアルバスを介したデータ通信における通信プロトコルを切り替え可能なデータ通信装置が知られている(特許文献1参照)。 A data communication device capable of switching a communication protocol in data communication via the serial bus for each slave device connected to the serial bus is known (see Patent Document 1).
また、画像形成部などの機能部を制御するASIC及びメモリー間でデータを転送するデータ転送処理を実行するDMA(Direct Memory Access)コントローラーと、前記データ転送処理の実行要求が格納されるバッファーとを備える画像形成装置が知られている。前記画像形成装置では、CPUが前記バッファーに格納された前記実行要求を当該バッファーへの格納順に処理する。 Further, a DMA (Direct Memory Access) controller that executes a data transfer process for transferring data between an ASIC that controls a functional unit such as an image forming unit and a memory, and a buffer for storing an execution request for the data transfer process are provided. An image forming apparatus is known. In the image forming apparatus, the CPU processes the execution requests stored in the buffer in the order of storage in the buffer.
具体的に、前記CPUは、前記実行要求に基づいて前記DMAコントローラーに前記データ転送処理の実行を指示する。また、前記CPUは、前記DMAコントローラーに前記データ転送処理の実行を指示する前に、当該データ転送処理で転送されるデータに対するコマンド及びチェックサムの付与などの前処理を実行する。また、前記CPUは、前記DMAコントローラーによる前記データ転送処理の実行後に、転送されたデータの整合性確認などの後処理を実行する。 Specifically, the CPU instructs the DMA controller to execute the data transfer process based on the execution request. Further, the CPU executes preprocessing such as assigning a command and a checksum to the data transferred in the data transfer process before instructing the DMA controller to execute the data transfer process. Further, the CPU executes post-processing such as confirmation of consistency of the transferred data after the data transfer processing is executed by the DMA controller.
ところで、前記CPUは、前記バッファーに二つの前記実行要求が格納されている場合に、前記DMAコントローラーによる一つ目の前記実行要求に対応する前記データ転送処理の実行中に二つ目の前記実行要求に対応する前記前処理を実行することが可能である。これにより、二つ目の前記実行要求に対応する前記データ転送処理の実行開始タイミングが早まるため、前記バッファーに格納された二つの前記実行要求の処理時間を短縮することが可能である。 By the way, when the two execution requests are stored in the buffer, the CPU performs the second execution during the execution of the data transfer process corresponding to the first execution request by the DMA controller. It is possible to execute the preprocessing corresponding to the request. As a result, the execution start timing of the data transfer process corresponding to the second execution request is advanced, so that the processing time of the two execution requests stored in the buffer can be shortened.
ここで、転送データ量が少ない前記実行要求から先に処理される場合には、前記CPUが、前記DMAコントローラーによる一つ目の前記実行要求に対応する前記データ転送処理の実行中に二つ目の前記実行要求に対応する前記前処理を終了できないことがある。この場合、当該前処理の未了部分は、一つ目の前記実行要求に対応する前記後処理の後に実行される。そのため、転送データ量が多い前記実行要求から先に処理される場合と比較して、前記バッファーに格納された二つの前記実行要求の処理時間が延びることになる。前記バッファーに三つ以上の前記実行要求が格納されている場合においても、例えば、転送データ量が最も少ない前記実行要求の後に他の前記実行要求が処理される場合には、同様の問題が生じる。 Here, when the execution request with a small amount of transfer data is processed first, the CPU is performing the second data transfer process corresponding to the first execution request by the DMA controller. The preprocessing corresponding to the execution request may not be completed. In this case, the unfinished portion of the pre-processing is executed after the post-processing corresponding to the first execution request. Therefore, the processing time of the two execution requests stored in the buffer is extended as compared with the case where the execution request having a large amount of transferred data is processed first. Even when three or more of the execution requests are stored in the buffer, the same problem occurs, for example, when the other execution requests are processed after the execution request with the smallest amount of transferred data. ..
本発明の目的は、バッファーに格納された複数のデータ転送処理の実行要求の処理時間を効率よく短縮可能な画像形成装置、及びデータ転送方法を提供することにある。 An object of the present invention is to provide an image forming apparatus and a data transfer method capable of efficiently shortening the processing time of a plurality of data transfer processing execution requests stored in a buffer.
本発明の一の局面に係る画像形成装置は、第1プロセッサーと、メモリーと、第2プロセッサーと、データ転送部と、バッファーとを備える。前記メモリー及び前記第2プロセッサーは、バスに接続される。前記データ転送部は、前記バスを介して前記メモリー及び前記第2プロセッサー間でデータを転送するデータ転送処理を実行する。前記バッファーには、前記データ転送処理の実行要求が格納される。また、前記第1プロセッサーは、実行指示部と、順序決定部と、前処理実行部とを備える。前記実行指示部は、前記バッファーに格納された前記実行要求に基づいて前記データ転送部に前記データ転送処理の実行を指示する。前記順序決定部は、前記バッファーに格納された複数の前記実行要求の各々に対応する転送データ量に基づいて、前記実行指示部による当該複数の前記実行要求の処理順序を決定する。前記前処理実行部は、前記データ転送部による前記データ転送処理の実行中に当該データ転送処理の次に実行される前記データ転送処理に対応する予め定められた前処理を実行する。 The image forming apparatus according to one aspect of the present invention includes a first processor, a memory, a second processor, a data transfer unit, and a buffer. The memory and the second processor are connected to the bus. The data transfer unit executes a data transfer process for transferring data between the memory and the second processor via the bus. An execution request for the data transfer process is stored in the buffer. In addition, the first processor includes an execution instruction unit, an order determination unit, and a preprocessing execution unit. The execution instruction unit instructs the data transfer unit to execute the data transfer process based on the execution request stored in the buffer. The order determination unit determines the processing order of the plurality of execution requests by the execution instruction unit based on the amount of transfer data corresponding to each of the plurality of execution requests stored in the buffer. The pre-processing execution unit executes a predetermined pre-processing corresponding to the data transfer processing executed next to the data transfer processing during the execution of the data transfer processing by the data transfer unit.
本発明の他の局面に係るデータ転送方法は、第1プロセッサーと、バスに接続されるメモリー及び第2プロセッサーと、前記バスを介して前記メモリー及び前記第2プロセッサー間でデータを転送するデータ転送処理を実行するデータ転送部と、前記データ転送処理の実行要求が格納されるバッファーと、を備える画像形成装置で実行され、前記第1プロセッサーが、指示ステップと、決定ステップと、実行ステップとを実行する。前記指示ステップでは、前記バッファーに格納された前記実行要求に基づいて前記データ転送部に前記データ転送処理の実行が指示される。前記決定ステップでは、前記バッファーに格納された複数の前記実行要求の各々に対応する転送データ量に基づいて、前記指示ステップによる当該複数の前記実行要求の処理順序が決定される。前記実行ステップでは、前記データ転送部による前記データ転送処理の実行中に当該データ転送処理の次に実行される前記データ転送処理に対応する予め定められた前処理が実行される。 A data transfer method according to another aspect of the present invention is a data transfer method for transferring data between a first processor, a memory connected to a bus, a second processor, and the memory and the second processor via the bus. It is executed by an image forming apparatus including a data transfer unit for executing the process and a buffer for storing the execution request of the data transfer process, and the first processor performs an instruction step, a determination step, and an execution step. Execute. In the instruction step, the data transfer unit is instructed to execute the data transfer process based on the execution request stored in the buffer. In the determination step, the processing order of the plurality of execution requests by the instruction step is determined based on the amount of transfer data corresponding to each of the plurality of execution requests stored in the buffer. In the execution step, a predetermined preprocessing corresponding to the data transfer process executed next to the data transfer process is executed during the execution of the data transfer process by the data transfer unit.
本発明によれば、バッファーに格納された複数のデータ転送処理の実行要求の処理時間を効率よく短縮することが可能である。 According to the present invention, it is possible to efficiently shorten the processing time of a plurality of data transfer processing execution requests stored in the buffer.
以下、添付図面を参照しながら、本発明の実施形態について説明する。なお、以下の実施形態は、本発明を具体化した一例であって、本発明の技術的範囲を限定するものではない。 Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. The following embodiments are examples that embody the present invention, and do not limit the technical scope of the present invention.
まず、図1を参照して、本発明の実施形態に係る画像形成装置2の構成について説明する。図1は、画像形成装置2の構成を示すブロック図である。 First, the configuration of the image forming apparatus 2 according to the embodiment of the present invention will be described with reference to FIG. FIG. 1 is a block diagram showing the configuration of the image forming apparatus 2.
図1に示されるように、画像形成装置2は、マスタープロセッサー4(本発明における第1プロセッサーの一例)と、DMA(Direct Memory Access)コントローラー5(本発明におけるデータ転送部の一例)と、メモリー6と、シリアルデータバス8(本発明におけるバスの一例)と、複数の機能部10と、複数のスレーブプロセッサー12(本発明における第2プロセッサーの一例)とを備える。マスタープロセッサー4、DMAコントローラー5、メモリー6、及び複数のスレーブプロセッサー12各々は、シリアルデータバス8を介して相互に通信可能に接続されている。複数のスレーブプロセッサー12は、それぞれ、互いに異なる機能部10に設けられている。なお、図1では、機能部10各々が破線によって示されている。 As shown in FIG. 1, the image forming apparatus 2 includes a master processor 4 (an example of a first processor in the present invention), a DMA (Direct Memory Access) controller 5 (an example of a data transfer unit in the present invention), and a memory. A serial data bus 8 (an example of a bus in the present invention), a plurality of functional units 10, and a plurality of slave processors 12 (an example of a second processor in the present invention) are provided. The master processor 4, the DMA controller 5, the memory 6, and the plurality of slave processors 12 are connected to each other so as to be able to communicate with each other via the serial data bus 8. The plurality of slave processors 12 are provided in functional units 10 that are different from each other. In FIG. 1, each of the functional units 10 is indicated by a broken line.
複数の機能部10は、それぞれ、画像形成装置2が備える複数の機能のいずれかを実行する。例えば、画像形成装置2は画像形成機能を備えている。また、複数の機能部10のうちの一つは画像形成部20(図7参照)である。画像形成部20は、画像データに基づいてシートに画像を形成する機能、即ち画像形成機能を実行可能である。なお、画像形成装置2で印刷に用いられるシートは、例えば印刷用紙である。 Each of the plurality of functional units 10 executes any one of the plurality of functions included in the image forming apparatus 2. For example, the image forming apparatus 2 has an image forming function. Further, one of the plurality of functional units 10 is an image forming unit 20 (see FIG. 7). The image forming unit 20 can execute a function of forming an image on a sheet based on image data, that is, an image forming function. The sheet used for printing in the image forming apparatus 2 is, for example, printing paper.
スレーブプロセッサー12は、当該スレーブプロセッサー12が設けられた機能部10を制御する。即ち、スレーブプロセッサー12は、マスタープロセッサー4の制御の下、当該スレーブプロセッサー12が設けられた機能部10の各構成要素の動作を制御して、当該機能部10に対応する機能を実現する。また、スレーブプロセッサー12は、当該スレーブプロセッサー12が設けられた機能部10に含まれるセンサーによる検出結果をマスタープロセッサー4に通知する。例えば、スレーブプロセッサー12は、ASIC(Application Specific Integrated Circuit)である。 The slave processor 12 controls the functional unit 10 provided with the slave processor 12. That is, the slave processor 12 controls the operation of each component of the functional unit 10 provided with the slave processor 12 under the control of the master processor 4, and realizes the function corresponding to the functional unit 10. Further, the slave processor 12 notifies the master processor 4 of the detection result by the sensor included in the functional unit 10 provided with the slave processor 12. For example, the slave processor 12 is an ASIC (Application Specific Integrated Circuit).
具体的に、スレーブプロセッサー12は、複数のレジスター14を備える。複数のレジスター14には、それぞれ、レジスターアドレスが割り当てられている。レジスター14には、機能部10の制御に用いられる制御データが格納される。スレーブプロセッサー12は、レジスター14に格納された前記制御データに従って、機能部10を制御する。また、レジスター14には、スレーブプロセッサー12に接続されたセンサーによる検出結果を示す検出データが格納される。前記検出データは、マスタープロセッサー4に送信される。例えば、マスタープロセッサー4は、スレーブプロセッサー12から受信される前記検出データに基づいて、当該スレーブプロセッサー12に送信される前記制御データを生成する。 Specifically, the slave processor 12 includes a plurality of registers 14. A register address is assigned to each of the plurality of registers 14. Control data used for controlling the functional unit 10 is stored in the register 14. The slave processor 12 controls the functional unit 10 according to the control data stored in the register 14. Further, the register 14 stores detection data indicating the detection result by the sensor connected to the slave processor 12. The detected data is transmitted to the master processor 4. For example, the master processor 4 generates the control data to be transmitted to the slave processor 12 based on the detection data received from the slave processor 12.
メモリー6は各種データを記憶する。例えば、メモリー6は、RAM(Random Access Memory)及びフラッシュメモリーのような半導体メモリーである。メモリー6には、スレーブプロセッサー12に送信される前記制御データが格納される。また、メモリー6には、スレーブプロセッサー12から受信される前記検出データが格納される。 The memory 6 stores various data. For example, the memory 6 is a semiconductor memory such as a RAM (Random Access Memory) and a flash memory. The control data transmitted to the slave processor 12 is stored in the memory 6. Further, the detection data received from the slave processor 12 is stored in the memory 6.
DMAコントローラー5は、マスタープロセッサー4からの指示に応じて、シリアルデータバス8を介してメモリー6及びスレーブプロセッサー12間でデータを転送するデータ転送処理を実行する。前記データ転送処理は、メモリー6に格納された前記制御データをスレーブプロセッサー12に転送する第1転送処理を含む。また、前記データ転送処理は、スレーブプロセッサー12のレジスター14に格納された前記検出データをメモリー6に転送する第2転送処理を含む。 The DMA controller 5 executes a data transfer process of transferring data between the memory 6 and the slave processor 12 via the serial data bus 8 in response to an instruction from the master processor 4. The data transfer process includes a first transfer process of transferring the control data stored in the memory 6 to the slave processor 12. Further, the data transfer process includes a second transfer process of transferring the detected data stored in the register 14 of the slave processor 12 to the memory 6.
図1に示されるように、メモリー6は、バッファー24を備える。バッファー24には、前記データ転送処理の実行要求を示す実行要求データが格納される。例えば、前記実行要求データは、転送対象データの転送元を示す転送元情報、転送対象データの転送先を示す転送先情報、及び転送対象データのデータ量を示すデータ量情報などを含む。バッファー24は、複数の前記実行要求データを格納可能な記憶容量を備える。画像形成装置2では、画像形成装置2の稼働中に発生した前記実行要求データがバッファー24に蓄積される。 As shown in FIG. 1, the memory 6 includes a buffer 24. The buffer 24 stores execution request data indicating an execution request for the data transfer process. For example, the execution request data includes transfer source information indicating a transfer source of transfer target data, transfer destination information indicating a transfer destination of transfer target data, data amount information indicating a data amount of transfer target data, and the like. The buffer 24 has a storage capacity capable of storing a plurality of the execution request data. In the image forming apparatus 2, the execution request data generated during the operation of the image forming apparatus 2 is accumulated in the buffer 24.
例えば、前記第1転送処理の実行要求を示す前記実行要求データには、転送対象データである前記制御データが格納されているメモリーアドレスを示す前記転送元情報、当該制御データが書き込まれるレジスターアドレスを示す前記転送先情報、及び当該制御データのデータ量を示す前記データ量情報が含まれる。 For example, the execution request data indicating the execution request of the first transfer process includes the transfer source information indicating the memory address in which the control data which is the transfer target data is stored, and the register address to which the control data is written. The transfer destination information to be shown and the data amount information to show the data amount of the control data are included.
また、前記第2転送処理の実行要求を示す前記実行要求データには、転送対象データである前記検出データが格納されているレジスターアドレスを示す前記転送元情報、当該検出データが書き込まれるメモリーアドレスを示す前記転送先情報、及び当該検出データのデータ量を示す前記データ量情報が含まれる。 Further, in the execution request data indicating the execution request of the second transfer process, the transfer source information indicating the register address in which the detection data which is the transfer target data is stored and the memory address to which the detection data is written are included. The transfer destination information to be shown and the data amount information to show the data amount of the detected data are included.
なお、前記実行要求データは、複数の転送対象データを連続して転送する前記データ転送処理の実行要求を示すものであってもよい。即ち、前記実行要求データは、複数の前記転送元情報、複数の前記転送先情報、及び複数の前記データ量情報を含んでいてもよい。また、バッファー24は、メモリー6の外部に設けられていてもよい。 The execution request data may indicate an execution request of the data transfer process for continuously transferring a plurality of transfer target data. That is, the execution request data may include a plurality of the transfer source information, a plurality of the transfer destination information, and a plurality of the data amount information. Further, the buffer 24 may be provided outside the memory 6.
マスタープロセッサー4は、複数のスレーブプロセッサー12各々との間でシリアル通信を実行することにより、複数のスレーブプロセッサー12各々を制御する。ここで、シリアル通信は、電気通信において伝送路上を一度に1ビットずつ、逐次的にシリアルデータを送る通信方式である。マスタープロセッサー4は、画像形成装置2に設定された通信プロトコルに従ってシリアル通信を行う。例えば、マスタープロセッサー4は、CPU(Central Processing Unit)である。 The master processor 4 controls each of the plurality of slave processors 12 by executing serial communication with each of the plurality of slave processors 12. Here, serial communication is a communication method in which serial data is sequentially transmitted one bit at a time on a transmission path in telecommunications. The master processor 4 performs serial communication according to the communication protocol set in the image forming apparatus 2. For example, the master processor 4 is a CPU (Central Processing Unit).
具体的に、マスタープロセッサー4は、バッファー24に格納される前記実行要求データに基づいて、DMAコントローラー5を介してスレーブプロセッサー12との間でシリアル通信を実行する。 Specifically, the master processor 4 executes serial communication with the slave processor 12 via the DMA controller 5 based on the execution request data stored in the buffer 24.
ここで、図2を参照して、画像形成装置2で実行されるシリアル通信の処理手順について説明する。図2は、画像形成装置2で実行されるシリアル通信の処理手順がデータ処理主体及びクロック30と共に示された図である。 Here, a procedure for processing serial communication executed by the image forming apparatus 2 will be described with reference to FIG. FIG. 2 is a diagram showing a processing procedure of serial communication executed by the image forming apparatus 2 together with a data processing subject and a clock 30.
マスタープロセッサー4は、バッファー24に前記実行要求データが格納されている場合に、シリアル通信を実行する。図2に示されるように、マスタープロセッサー4は、前記実行要求データに基づく前記データ転送処理が実行される前に、当該データ転送処理に対応する前処理を実行する。前記前処理では、前記実行要求データに含まれる前記転送元情報によって特定される転送対象データに対して画像形成装置2に設定された通信プロトコルに基づく制御情報が付与される。例えば、前記制御情報は、コマンド、アドレス情報、及びチェックサムを含む。前記コマンドは、転送先デバイス(メモリー6又はスレーブプロセッサー12)に対する命令を含む。前記アドレス情報は、前記転送先情報である。前記チェックサムは、誤り検出符号を含み、誤り検出に用いられる。即ち、前記チェックサムは、通信の整合性を確認するために用いられる。シリアル通信では、前記制御情報及び転送対象データを含むシリアルデータ32が転送される。なお、前記前処理は、プリアンブル及びポストアンブルをシリアルデータ32に含める処理を含んでいてもよい。例えば、前記プリアンブルは、シリアル通信においてシリアルデータ32の先頭に配置する区切りビット列である。また、前記ポストアンブルは、シリアルデータ32の末尾に含める区切りビット列である。 The master processor 4 executes serial communication when the execution request data is stored in the buffer 24. As shown in FIG. 2, the master processor 4 executes the pre-processing corresponding to the data transfer processing before the data transfer processing based on the execution request data is executed. In the preprocessing, control information based on the communication protocol set in the image forming apparatus 2 is added to the transfer target data specified by the transfer source information included in the execution request data. For example, the control information includes commands, address information, and checksums. The command includes a command to a transfer destination device (memory 6 or slave processor 12). The address information is the forwarding destination information. The checksum includes an error detection code and is used for error detection. That is, the checksum is used to confirm the consistency of communication. In serial communication, serial data 32 including the control information and transfer target data is transferred. The pre-processing may include a process of including the preamble and the post-amble in the serial data 32. For example, the preamble is a delimiter bit string arranged at the beginning of serial data 32 in serial communication. Further, the post amble is a delimiter bit string to be included at the end of the serial data 32.
マスタープロセッサー4は、前記前処理の終了後に、前記実行要求データに基づいてDMAコントローラー5に対して前記データ転送処理の実行を指示する。これにより、図2に示されるように、DMAコントローラー5によって、マスタープロセッサー4が生成するクロック30に同期したDMA転送、即ち前記データ転送処理が実行される。具体的に、マスタープロセッサー4からの指示を受けたDMAコントローラー5は、シリアルデータ32を転送元デバイスから転送先デバイスに転送する。 After the completion of the preprocessing, the master processor 4 instructs the DMA controller 5 to execute the data transfer process based on the execution request data. As a result, as shown in FIG. 2, the DMA controller 5 executes the DMA transfer synchronized with the clock 30 generated by the master processor 4, that is, the data transfer process. Specifically, the DMA controller 5 that receives the instruction from the master processor 4 transfers the serial data 32 from the transfer source device to the transfer destination device.
図2に示されるように、マスタープロセッサー4は、DMAコントローラー5による前記データ転送処理が終了した後に、当該データ転送処理に対応する後処理を実行する。前記後処理では、画像形成装置2に設定された通信プロトコルに基づいて通信の整合性が確認される。例えば、通信の整合性は、シリアルデータ32に含まれる前記チェックサムの比較処理を実行することによって確認される。転送先デバイスは、前記後処理の終了後に、受信したシリアルデータ32に含まれる前記コマンドに従って、転送対象データを指定されたアドレスに書き込む処理を実行する。 As shown in FIG. 2, the master processor 4 executes post-processing corresponding to the data transfer processing after the data transfer processing by the DMA controller 5 is completed. In the post-processing, the consistency of communication is confirmed based on the communication protocol set in the image forming apparatus 2. For example, the consistency of communication is confirmed by executing the checksum comparison process included in the serial data 32. After the completion of the post-processing, the transfer destination device executes a process of writing the transfer target data to the designated address according to the command included in the received serial data 32.
ところで、マスタープロセッサー4は、バッファー24に二つの前記実行要求データが格納されている場合に、DMAコントローラー5による一つ目の前記実行要求データに対応する前記データ転送処理の実行中に二つ目の前記実行要求データに対応する前記前処理を実行することが可能である。 By the way, when the buffer 24 stores the two execution request data, the master processor 4 is performing the second data transfer process corresponding to the first execution request data by the DMA controller 5. It is possible to execute the preprocessing corresponding to the execution request data of.
例えば、バッファー24に、図3に示されるシリアルデータ34の転送に対応する第1の実行要求データと、シリアルデータ34よりもデータ量が少ないシリアルデータ36の転送に対応する第2の実行要求データとが格納されていると仮定する。なお、図3では、シリアルデータ34の転送に対応する前記前処理及び前記後処理が、それぞれ第1前処理及び第1後処理として示されている。また、図3では、シリアルデータ36の転送に対応する前記前処理及び前記後処理が、それぞれ第2前処理及び第2後処理として示されている。 For example, in the buffer 24, the first execution request data corresponding to the transfer of the serial data 34 shown in FIG. 3 and the second execution request data corresponding to the transfer of the serial data 36 having a smaller amount of data than the serial data 34. And is stored. In FIG. 3, the pre-processing and the post-processing corresponding to the transfer of the serial data 34 are shown as the first pre-processing and the first post-processing, respectively. Further, in FIG. 3, the pre-processing and the post-processing corresponding to the transfer of the serial data 36 are shown as the second pre-processing and the second post-processing, respectively.
この場合において、マスタープロセッサー4は、前記第1の実行要求データに対応する前記データ転送処理の実行中(シリアルデータ34の転送中)に、前記第2の実行要求データに対応する前記前処理(第2前処理)を実行可能である。これにより、前記第2の実行要求データに対応する前記データ転送処理の実行開始タイミングが早まるため、バッファー24に格納された二つの前記実行要求データの処理時間を短縮することが可能である。 In this case, the master processor 4 is performing the preprocessing (during the transfer of the serial data 34) corresponding to the second execution request data while the data transfer process corresponding to the first execution request data is being executed (during the transfer of the serial data 34). The second preprocessing) can be executed. As a result, the execution start timing of the data transfer process corresponding to the second execution request data is advanced, so that the processing time of the two execution request data stored in the buffer 24 can be shortened.
ここで、転送データ量が少ない前記実行要求データから先に処理される場合には、マスタープロセッサー4が、DMAコントローラー5による一つ目の前記実行要求データに対応する前記データ転送処理の実行中に二つ目の前記実行要求データに対応する前記前処理を終了できないことがある。なお、転送データ量とは、前記実行要求データで実行が要求される前記データ転送処理で転送されることになるデータのデータ量のことである。 Here, when the execution request data having a small amount of transfer data is processed first, the master processor 4 is executing the data transfer process corresponding to the first execution request data by the DMA controller 5. The preprocessing corresponding to the second execution request data may not be completed. The transfer data amount is the amount of data to be transferred in the data transfer process for which execution is requested by the execution request data.
例えば、マスタープロセッサー4が、前記第2の実行要求データを前記第1の実行要求データよりも先に処理したとする。この場合、図4に示されるように、マスタープロセッサー4は、前記第2の実行要求データに対応する前記データ転送処理の実行中(シリアルデータ36の転送中)に、前記第1の実行要求データに対応する前記前処理(第1前処理)を終了させることができない。ここで、当該前処理の未了部分は、一つ目の前記実行要求データに対応する前記後処理(第2後処理)の後に実行される。そのため、前記第1の実行要求データから先に処理される場合と比較して、バッファー24に格納された二つの前記実行要求データの処理時間が延びることになる。バッファー24に三つ以上の前記実行要求データが格納されている場合においても、例えば、転送データ量が最も少ない前記実行要求データの後に他の前記実行要求データが処理される場合には、同様の問題が生じる。 For example, suppose that the master processor 4 processes the second execution request data before the first execution request data. In this case, as shown in FIG. 4, the master processor 4 is executing the data transfer process corresponding to the second execution request data (during the transfer of the serial data 36), the first execution request data. The pretreatment (first pretreatment) corresponding to the above cannot be completed. Here, the unfinished portion of the pre-processing is executed after the post-processing (second post-processing) corresponding to the first execution request data. Therefore, the processing time of the two execution request data stored in the buffer 24 is extended as compared with the case where the first execution request data is processed first. Even when three or more of the execution request data are stored in the buffer 24, for example, when the other execution request data is processed after the execution request data having the smallest transfer data amount, the same applies. Problems arise.
これに対し、本発明の実施形態に係る画像形成装置2では、以下に説明するように、バッファー24に格納された複数の前記実行要求データの処理時間を効率よく短縮することが可能である。 On the other hand, in the image forming apparatus 2 according to the embodiment of the present invention, as described below, it is possible to efficiently shorten the processing time of the plurality of execution request data stored in the buffer 24.
具体的に、マスタープロセッサー4は、図1に示されるように、実行指示部25、順序決定部26、及び前処理実行部27を含む。マスタープロセッサー4は、不図示のROMに格納されている通信制御プログラムを実行する。これにより、マスタープロセッサー4は、実行指示部25、順序決定部26、及び前処理実行部27として機能する。なお、前記通信制御プログラムは、CD、DVD、フラッシュメモリーなどのコンピューター読み取り可能な記録媒体に記録されており、前記記録媒体から読み取られて画像形成装置2に設けられる不揮発性の記憶装置にインストールされてもよい。 Specifically, as shown in FIG. 1, the master processor 4 includes an execution instruction unit 25, an order determination unit 26, and a preprocessing execution unit 27. The master processor 4 executes a communication control program stored in a ROM (not shown). As a result, the master processor 4 functions as an execution instruction unit 25, an order determination unit 26, and a preprocessing execution unit 27. The communication control program is recorded on a computer-readable recording medium such as a CD, DVD, or flash memory, and is read from the recording medium and installed in a non-volatile storage device provided in the image forming apparatus 2. You may.
実行指示部25は、バッファー24に格納された前記実行要求データに基づいて、DMAコントローラー5に前記データ転送処理の実行を指示する。 The execution instruction unit 25 instructs the DMA controller 5 to execute the data transfer process based on the execution request data stored in the buffer 24.
順序決定部26は、バッファー24に格納された複数の前記実行要求データの各々に対応する転送データ量に基づいて、実行指示部25による当該複数の前記実行要求データの処理順序を決定する。 The order determination unit 26 determines the processing order of the plurality of execution request data by the execution instruction unit 25 based on the amount of transfer data corresponding to each of the plurality of execution request data stored in the buffer 24.
例えば、順序決定部26は、転送データ量が多い順に、実行指示部25による複数の前記実行要求データの処理順序を決定する。即ち、順序決定部26は、転送データ量が多いほど処理順序が早くなるように、複数の前記実行要求データの処理順序を決定する。 For example, the order determination unit 26 determines the processing order of the plurality of execution request data by the execution instruction unit 25 in descending order of the amount of transferred data. That is, the order determination unit 26 determines the processing order of the plurality of execution request data so that the processing order becomes faster as the amount of transferred data increases.
また、順序決定部26は、バッファー24に格納されている全ての前記実行要求データの処理順序を決定して、当該決定後にバッファー24に格納される前記実行要求データの処理順序を当該決定時にバッファー24に格納されていた前記実行要求データよりも劣後させる。 Further, the order determination unit 26 determines the processing order of all the execution request data stored in the buffer 24, and buffers the processing order of the execution request data stored in the buffer 24 after the determination at the time of the determination. It is subordinated to the execution request data stored in 24.
具体的に、順序決定部26は、処理順序が決定された全ての前記実行要求データが処理されるごとに、バッファー24に格納されている複数の前記実行要求データの処理順序を決定する。 Specifically, the order determination unit 26 determines the processing order of the plurality of execution request data stored in the buffer 24 every time all the execution request data whose processing order is determined is processed.
前処理実行部27は、DMAコントローラー5による前記データ転送処理の実行中に、当該データ転送処理の次に実行される前記データ転送処理に対応する前記前処理を実行する。 While the DMA controller 5 is executing the data transfer process, the pre-process execution unit 27 executes the pre-process corresponding to the data transfer process executed next to the data transfer process.
[通信制御処理]
以下、図5を参照しつつ、画像形成装置2においてマスタープロセッサー4により実行される通信制御処理の手順とともに、本発明におけるデータ転送方法について説明する。ここで、ステップS11、S12・・・は、マスタープロセッサー4により実行される処理手順(ステップ)の番号を表している。なお、前記通信制御処理は、例えば、画像形成装置2において当該画像形成装置2が有するいずれかの機能が実行される場合に実行される。
[Communication control processing]
Hereinafter, the data transfer method in the present invention will be described together with the procedure of the communication control process executed by the master processor 4 in the image forming apparatus 2 with reference to FIG. Here, steps S11, S12 ... Represent the number of the processing procedure (step) executed by the master processor 4. The communication control process is executed, for example, when any function of the image forming apparatus 2 is executed in the image forming apparatus 2.
<ステップS11>
まず、ステップS11において、マスタープロセッサー4は、初期処理として変数nの値を0に設定する。ここで、変数nは、処理順序が決定された前記実行要求データの残数を記録するために用いられる変数である。
<Step S11>
First, in step S11, the master processor 4 sets the value of the variable n to 0 as an initial process. Here, the variable n is a variable used for recording the remaining number of the execution request data whose processing order is determined.
<ステップS12>
ステップS12において、マスタープロセッサー4は、前記データ転送処理の実行要求が発生したか否かを判断する。
<Step S12>
In step S12, the master processor 4 determines whether or not the execution request for the data transfer process has occurred.
ここで、マスタープロセッサー4は、前記データ転送処理の実行要求が発生したと判断すると(S12のYes側)、処理をステップS13に移行させる。また、前記データ転送処理の実行要求が発生していなければ(S12のNo側)、マスタープロセッサー4は、ステップS12で前記データ転送処理の実行要求の発生を待ち受ける。 Here, when the master processor 4 determines that the execution request for the data transfer process has occurred (Yes side of S12), the master processor 4 shifts the process to step S13. Further, if the execution request of the data transfer process has not been generated (No side of S12), the master processor 4 waits for the generation of the execution request of the data transfer process in step S12.
<ステップS13>
ステップS13において、マスタープロセッサー4は、発生した実行要求に対応する前記実行要求データをバッファー24に格納する。
<Step S13>
In step S13, the master processor 4 stores the execution request data corresponding to the generated execution request in the buffer 24.
<ステップS14>
ステップS14において、マスタープロセッサー4は、変数nの値が0であるか否かを判断する。即ち、マスタープロセッサー4は、処理順序が決定された前記実行要求データの残数が0であるか否かを判断する。
<Step S14>
In step S14, the master processor 4 determines whether or not the value of the variable n is 0. That is, the master processor 4 determines whether or not the remaining number of the execution request data whose processing order has been determined is 0.
ここで、マスタープロセッサー4は、変数nの値が0であると判断すると(S14のYes側)、処理をステップS15に移行させる。また、変数nの値が0でなければ(S14のNo側)、マスタープロセッサー4は、処理をステップS17に移行させる。 Here, when the master processor 4 determines that the value of the variable n is 0 (Yes side of S14), the master processor 4 shifts the process to step S15. If the value of the variable n is not 0 (No side of S14), the master processor 4 shifts the process to step S17.
<ステップS15>
ステップS15において、マスタープロセッサー4は、バッファー24に格納されている全ての前記実行要求データのそれぞれについて、処理順序を決定する。ここで、ステップS15の処理が、本発明における決定ステップの一例であって、マスタープロセッサー4の順序決定部26により実行される。
<Step S15>
In step S15, the master processor 4 determines the processing order for each of the execution request data stored in the buffer 24. Here, the process of step S15 is an example of the determination step in the present invention, and is executed by the order determination unit 26 of the master processor 4.
具体的に、マスタープロセッサー4は、転送データ量が多いほど処理順序が上位になるように、即ち、より速いタイミングで処理されるように、バッファー24に格納されている前記実行要求データ各々の処理順序を決定する。なお、マスタープロセッサー4は、前記実行要求データに含まれる前記データ量情報に基づいて、前記実行要求データ各々に対応する転送データ量を認識することが可能である。 Specifically, the master processor 4 processes each of the execution request data stored in the buffer 24 so that the processing order is higher as the amount of transferred data is larger, that is, the processing is performed at a faster timing. Determine the order. The master processor 4 can recognize the transfer data amount corresponding to each of the execution request data based on the data amount information included in the execution request data.
<ステップS16>
ステップS16において、マスタープロセッサー4は、変数nの値を、ステップS15で処理順序が決定された前記実行要求データの数を示す値に設定する。
<Step S16>
In step S16, the master processor 4 sets the value of the variable n to a value indicating the number of execution request data whose processing order is determined in step S15.
<ステップS17>
ステップS17において、マスタープロセッサー4は、後述するデータ通信処理を実行する。
<Step S17>
In step S17, the master processor 4 executes the data communication process described later.
<ステップS18>
ステップS18において、マスタープロセッサー4は、バッファー24に格納されている前記実行要求データのうち、処理順序が最上位の前記実行要求データを削除する。
<Step S18>
In step S18, the master processor 4 deletes the execution request data having the highest processing order among the execution request data stored in the buffer 24.
<ステップS19>
ステップS19において、マスタープロセッサー4は、変数nの値をデクリメントする。即ち、マスタープロセッサー4は、変数nの値を1減らす演算を実行する。
<Step S19>
In step S19, the master processor 4 decrements the value of the variable n. That is, the master processor 4 executes an operation of reducing the value of the variable n by 1.
<ステップS20>
ステップS20において、マスタープロセッサー4は、バッファー24に前記実行要求データが格納されているか否かを判断する。
<Step S20>
In step S20, the master processor 4 determines whether or not the execution request data is stored in the buffer 24.
ここで、マスタープロセッサー4は、バッファー24に前記実行要求データが格納されていると判断すると(S20のYes側)、処理をステップS14に移行させる。また、バッファー24に前記実行要求データが格納されていなければ(S20のNo側)、マスタープロセッサー4は、前記通信制御処理を終了させる。 Here, when the master processor 4 determines that the execution request data is stored in the buffer 24 (Yes side of S20), the master processor 4 shifts the process to step S14. If the execution request data is not stored in the buffer 24 (No side of S20), the master processor 4 terminates the communication control process.
[データ通信処理]
次に、図6を参照しつつ、前記通信制御処理のステップS17で実行されるデータ通信処理の手順について説明する。
[Data communication processing]
Next, the procedure of the data communication process executed in step S17 of the communication control process will be described with reference to FIG.
<ステップS31>
まず、ステップS31において、マスタープロセッサー4は、バッファー24に格納されている前記実行要求データのうち、処理順序が最上位の前記実行要求データに対応する前記前処理が終了しているか否かを判断する。この判断の方法については、後段で説明する。
<Step S31>
First, in step S31, the master processor 4 determines whether or not the preprocessing corresponding to the execution request data having the highest processing order among the execution request data stored in the buffer 24 has been completed. To do. The method of this determination will be described later.
ここで、マスタープロセッサー4は、処理順序が最上位の前記実行要求データに対応する前記前処理が終了していると判断すると(S31のYes側)、処理をステップS33に移行させる。また、処理順序が最上位の前記実行要求データに対応する前記前処理が終了していなければ(S31のNo側)、マスタープロセッサー4は、処理をステップS32に移行させる。 Here, when the master processor 4 determines that the pre-processing corresponding to the execution request data having the highest processing order has been completed (Yes side of S31), the master processor 4 shifts the processing to step S33. Further, if the pre-processing corresponding to the execution request data having the highest processing order is not completed (No side of S31), the master processor 4 shifts the processing to step S32.
<ステップS32>
ステップS32において、マスタープロセッサー4は、処理順序が最上位の前記実行要求データに対応する前記前処理を実行する。なお、マスタープロセッサー4は、処理順序が最上位の前記実行要求データに対応する前記前処理の一部が終了していない場合は、当該前処理の未了部分について処理を実行する。
<Step S32>
In step S32, the master processor 4 executes the pre-processing corresponding to the execution request data having the highest processing order. If a part of the pre-processing corresponding to the execution request data having the highest processing order is not completed, the master processor 4 executes the processing for the unfinished part of the pre-processing.
<ステップS33>
ステップS33において、マスタープロセッサー4は、処理順序が最上位の前記実行要求データに基づいて、DMAコントローラー5に前記データ転送処理の実行を指示する。ここで、ステップS33の処理が、本発明における指示ステップの一例であって、マスタープロセッサー4の実行指示部25により実行される。
<Step S33>
In step S33, the master processor 4 instructs the DMA controller 5 to execute the data transfer process based on the execution request data having the highest processing order. Here, the process of step S33 is an example of the instruction step in the present invention, and is executed by the execution instruction unit 25 of the master processor 4.
<ステップS34>
ステップS34において、マスタープロセッサー4は、DMAコントローラー5による前記データ転送処理が終了したか否かを判断する。
<Step S34>
In step S34, the master processor 4 determines whether or not the data transfer process by the DMA controller 5 has been completed.
ここで、マスタープロセッサー4は、DMAコントローラー5による前記データ転送処理が終了したと判断すると(S34のYes側)、処理をステップS39に移行させる。また、DMAコントローラー5による前記データ転送処理が終了していなければ(S34のNo側)、マスタープロセッサー4は、処理をステップS35に移行させる。 Here, when the master processor 4 determines that the data transfer process by the DMA controller 5 is completed (Yes side of S34), the master processor 4 shifts the process to step S39. If the data transfer process by the DMA controller 5 is not completed (No side of S34), the master processor 4 shifts the process to step S35.
<ステップS35>
ステップS35において、マスタープロセッサー4は、前記データ転送処理の実行要求が発生したか否かを判断する。
<Step S35>
In step S35, the master processor 4 determines whether or not the execution request for the data transfer process has occurred.
ここで、マスタープロセッサー4は、前記データ転送処理の実行要求が発生したと判断すると(S35のYes側)、処理をステップS36に移行させる。また、前記データ転送処理の実行要求が発生していなければ(S35のNo側)、マスタープロセッサー4は、処理をステップS37に移行させる。 Here, when the master processor 4 determines that the execution request for the data transfer process has occurred (Yes side of S35), the master processor 4 shifts the process to step S36. Further, if the execution request of the data transfer process has not occurred (No side of S35), the master processor 4 shifts the process to step S37.
<ステップS36>
ステップS36において、マスタープロセッサー4は、発生した実行要求に対応する前記実行要求データをバッファー24に格納する。
<Step S36>
In step S36, the master processor 4 stores the execution request data corresponding to the generated execution request in the buffer 24.
ステップS36で前記実行要求データがバッファー24に格納されることで、バッファー24内には、処理順序が決定された前記実行要求データと、処理順序が決定されていない前記実行要求データとが混在することになる。前記通信制御処理では、バッファー24に格納されている処理順序が決定された前記実行要求データの全てが処理された場合に、バッファー24に格納されている処理順序が決定されていない前記実行要求データの各々について処理順序が決定される。即ち、ステップS14で処理順序が決定された前記実行要求データの残数が0であると判断された場合に、ステップS15の処理が実行される。これにより、処理順序が決定された前記実行要求データの残数が0になる前にステップS15の処理が実行される構成と比較して、転送データ量が少ない前記実行要求データの実行が繰り返し後回しにされることを回避可能である。 By storing the execution request data in the buffer 24 in step S36, the execution request data whose processing order is determined and the execution request data whose processing order is not determined are mixed in the buffer 24. It will be. In the communication control process, when all of the execution request data in which the processing order stored in the buffer 24 is determined is processed, the execution request data in which the processing order stored in the buffer 24 is not determined is determined. The processing order is determined for each of. That is, when it is determined that the remaining number of the execution request data whose processing order is determined in step S14 is 0, the processing of step S15 is executed. As a result, the execution of the execution request data having a small amount of transfer data is repeatedly postponed as compared with the configuration in which the processing of step S15 is executed before the remaining number of the execution request data whose processing order is determined becomes 0. It is possible to avoid being made.
<ステップS37>
ステップS37において、マスタープロセッサー4は、変数nの値が2以上であるか否かを判断する。即ち、マスタープロセッサー4は、現在処理中の前記実行要求データ以外に、処理順序が決定された前記実行要求データがバッファー24に残存しているか否かを判断する。
<Step S37>
In step S37, the master processor 4 determines whether or not the value of the variable n is 2 or more. That is, the master processor 4 determines whether or not the execution request data whose processing order has been determined remains in the buffer 24 in addition to the execution request data currently being processed.
ここで、マスタープロセッサー4は、変数nの値が2以上であると判断すると(S37のYes側)、処理をステップS38に移行させる。また、変数nの値が2以上でなければ(S37のNo側)、マスタープロセッサー4は、処理をステップS34に移行させる。 Here, when the master processor 4 determines that the value of the variable n is 2 or more (Yes side of S37), the master processor 4 shifts the process to step S38. Further, if the value of the variable n is not 2 or more (No side of S37), the master processor 4 shifts the process to step S34.
<ステップS38>
ステップS38において、マスタープロセッサー4は、処理順序が次順位の前記実行要求データに対応する前記前処理を実行する。即ち、マスタープロセッサー4は、現在処理中の前記実行要求データの次に処理順序が上位の前記実行要求データに対応する前記前処理を実行する。ここで、ステップS38の処理が、本発明における実行ステップの一例であって、マスタープロセッサー4の前処理実行部27により実行される。
<Step S38>
In step S38, the master processor 4 executes the preprocessing corresponding to the execution request data in the next order of processing order. That is, the master processor 4 executes the preprocessing corresponding to the execution request data whose processing order is higher than that of the execution request data currently being processed. Here, the process of step S38 is an example of the execution step in the present invention, and is executed by the preprocessing execution unit 27 of the master processor 4.
ここで、ステップS38で実行される前記前処理は、当該前処理が終了するか、DMAコントローラー5による前記データ転送処理が終了するまで実行される。マスタープロセッサー4は、DMAコントローラー5による前記データ転送処理が終了する前に前記前処理を終了した場合には、その旨をメモリー6に記録する。また、マスタープロセッサー4は、前記前処理が終了する前にDMAコントローラー5による前記データ転送処理が終了した場合には、当該前処理の進捗状況をメモリー6に記録する。これにより、マスタープロセッサー4は、ステップS31において、処理順序が最上位の前記実行要求データに対応する前記前処理が終了しているか否かを判断することが可能である。 Here, the preprocessing executed in step S38 is executed until the preprocessing is completed or the data transfer processing by the DMA controller 5 is completed. If the master processor 4 finishes the preprocessing before the data transfer process by the DMA controller 5 finishes, the master processor 4 records that fact in the memory 6. If the data transfer process by the DMA controller 5 is completed before the preprocess is completed, the master processor 4 records the progress of the preprocess in the memory 6. Thereby, in step S31, the master processor 4 can determine whether or not the pre-processing corresponding to the execution request data having the highest processing order has been completed.
<ステップS39>
ステップS39において、マスタープロセッサー4は、終了した前記データ転送処理に対応する前記後処理を実行する。
<Step S39>
In step S39, the master processor 4 executes the post-processing corresponding to the completed data transfer processing.
なお、順序決定部26は、転送データ量が多い順に処理順序を決定することに替えて、複数の前記実行要求データのうち、転送データ量が予め定められた閾値未満である第1の実行要求データの処理順序を、転送データ量が前記閾値以上である第2の実行要求データよりも劣後させてもよい。例えば、前記閾値は、当該閾値が示すデータ量のデータの転送時間が、マスタープロセッサー4による前記前処理の平均処理時間に所定時間を加算した時間よりも短くなるような値である。この場合、順序決定部26は、複数の前記第2の実行要求について、バッファー24への格納順が早い順に、処理順序を決定する。また、順序決定部26は、複数の前記第1の実行要求について、転送データ量が多い順、又はバッファー24への格納順が早い順に、処理順序を決定する。 In addition, the order determination unit 26 determines the processing order in descending order of the amount of transferred data, but instead of determining the processing order, the first execution request in which the amount of transferred data is less than a predetermined threshold among the plurality of said execution request data. The data processing order may be inferior to the second execution request data in which the amount of transferred data is equal to or greater than the threshold value. For example, the threshold value is a value such that the data transfer time of the amount of data indicated by the threshold value is shorter than the time obtained by adding a predetermined time to the average processing time of the preprocessing by the master processor 4. In this case, the order determination unit 26 determines the processing order of the plurality of the second execution requests in the order of the earliest storage order in the buffer 24. Further, the order determination unit 26 determines the processing order of the plurality of first execution requests in the order of the largest amount of transferred data or the earliest storage order in the buffer 24.
また、順序決定部26は、バッファー24に格納されている前記実行要求の数が予め定められた第1基準値を超える場合は、バッファー24に格納されている全ての前記実行要求データの処理順序を決定しなくてもよい。具体的に、順序決定部26は、バッファー24に格納されている全ての前記実行要求データのうち、バッファー24への格納が早い順に選択された前記第1基準値と同数の前記実行要求データで構成されるグループ内で処理順序を決定して、当該決定時にバッファー24に格納されている前記グループ外の前記実行要求データ、及び当該決定後にバッファー24に格納される前記実行要求データの処理順序を、前記グループ内の前記実行要求データよりも劣後させてもよい。前記第1基準値は、任意に決定される数値であってよい。 Further, when the number of the execution requests stored in the buffer 24 exceeds the predetermined first reference value, the order determination unit 26 processes the processing order of all the execution request data stored in the buffer 24. You do not have to decide. Specifically, the order determination unit 26 uses the same number of execution request data as the first reference value selected in the order of earliest storage in the buffer 24 among all the execution request data stored in the buffer 24. The processing order is determined within the configured group, and the processing order of the execution request data outside the group stored in the buffer 24 at the time of the determination and the execution request data stored in the buffer 24 after the determination is determined. , May be inferior to the execution request data in the group. The first reference value may be an arbitrarily determined numerical value.
また、順序決定部26は、処理順序が決定された全ての前記実行要求データが処理されるごとに、バッファー24に格納されている複数の前記実行要求データの処理順序を決定することに替えて、以下に示すように処理順序を決定してもよい。即ち、順序決定部26は、バッファー24に格納されている処理順序が決定されていない未決定実行要求データの数が予め定められた第2基準値以上である場合に、バッファー24に格納されている全部又は前記第2基準値と同数の前記未決定実行要求データの処理順序を決定してもよい。前記第2基準値は、任意に決定される数値であってよい。 Further, the order determination unit 26 determines the processing order of the plurality of execution request data stored in the buffer 24 every time all the execution request data whose processing order is determined is processed. , The processing order may be determined as shown below. That is, the order determination unit 26 is stored in the buffer 24 when the number of undetermined execution request data whose processing order is not determined is equal to or greater than a predetermined second reference value. The processing order of all or the same number of the undetermined execution request data as the second reference value may be determined. The second reference value may be an arbitrarily determined numerical value.
例えば、マスタープロセッサー4は、ステップS14で変数nの値が0ではないと判断された場合であっても、バッファー24に格納されている前記未決定実行要求データの数が前記第2基準値以上である場合には、当該未決定実行要求データ各々の処理順序を決定してよい。この場合、マスタープロセッサー4は、前記未決定実行要求データとは異なる前記実行要求データ(即ち、処理順序が決定済の前記実行要求データ)よりも処理順序が劣後するように、前記未決定実行要求データ各々の処理順序を決定する。 For example, in the master processor 4, even if the value of the variable n is determined not to be 0 in step S14, the number of undetermined execution request data stored in the buffer 24 is equal to or greater than the second reference value. If, the processing order of each of the undetermined execution request data may be determined. In this case, the master processor 4 makes the undecided execution request inferior to the execution request data (that is, the execution request data whose processing order has been determined) different from the undecided execution request data. Determine the processing order of each data.
また、マスタープロセッサー4は、ステップS34からステップS38までの処理が実行されている間、即ちDMAコントローラー5による前記データ転送処理の実行中において、バッファー24に格納されている前記未決定実行要求データの数が前記第2基準値以上である場合に、当該未決定実行要求データ各々の処理順序を決定してよい。例えば、マスタープロセッサー4は、ステップS38で実行される前記前処理が終了した後において、バッファー24に格納されている前記未決定実行要求データの数が前記第2基準値以上である場合に、当該未決定実行要求データ各々の処理順序を決定することが可能である。 Further, the master processor 4 receives the undetermined execution request data stored in the buffer 24 while the processes from step S34 to step S38 are being executed, that is, during the execution of the data transfer process by the DMA controller 5. When the number is equal to or greater than the second reference value, the processing order of each of the undetermined execution request data may be determined. For example, the master processor 4 determines that the number of undetermined execution request data stored in the buffer 24 is equal to or greater than the second reference value after the preprocessing executed in step S38 is completed. It is possible to determine the processing order of each undetermined execution request data.
次に、図7を参照して、本実施形態に係る画像形成装置2の詳細な構成について説明する。図7は、画像形成装置2の詳細な構成を示す図である。 Next, a detailed configuration of the image forming apparatus 2 according to the present embodiment will be described with reference to FIG. 7. FIG. 7 is a diagram showing a detailed configuration of the image forming apparatus 2.
図7に示されるように、複数の機能部10のうち、1つの機能部10は原稿搬送部16であり、他の1つの機能部10は原稿読取部18である。さらに他の1つの機能部10は画像形成部20であり、さらに他の1つの機能部10は搬送部22である。 As shown in FIG. 7, of the plurality of functional units 10, one functional unit 10 is a document transport unit 16 and the other functional unit 10 is a document reading unit 18. Yet another functional unit 10 is an image forming unit 20, and yet another functional unit 10 is a transport unit 22.
原稿搬送部16は、原稿読取部18に向けて原稿を搬送する。原稿搬送部16のスレーブプロセッサー12は、レジスター14(図1参照)に書き込まれたデータ(前記制御データ)に基づいて、原稿搬送部16の各構成を制御する。例えば、原稿搬送部16はADF(Auto Document Feeder)である。 The document transport unit 16 transports the document toward the document reading unit 18. The slave processor 12 of the document transfer unit 16 controls each configuration of the document transfer unit 16 based on the data (the control data) written in the register 14 (see FIG. 1). For example, the document transport unit 16 is an ADF (Auto Document Feeder).
原稿読取部18は、原稿に含まれる画像を読み取る。原稿読取部18のスレーブプロセッサー12は、レジスター14(図1参照)に書き込まれたデータ(前記制御データ)に基づいて、原稿読取部18の各構成を制御する。例えば、原稿読取部18はスキャナーである。 The document reading unit 18 reads an image contained in the document. The slave processor 12 of the document reading unit 18 controls each configuration of the document reading unit 18 based on the data (the control data) written in the register 14 (see FIG. 1). For example, the document reading unit 18 is a scanner.
画像形成部20は、電子写真方式によって、印刷用紙などのシートに画像を形成する。画像形成部20は、感光体ドラム139と、帯電装置140と、露光装置142と、現像装置144と、転写装置146と、定着装置148とを備える。 The image forming unit 20 forms an image on a sheet such as printing paper by an electrophotographic method. The image forming unit 20 includes a photoconductor drum 139, a charging device 140, an exposure device 142, a developing device 144, a transfer device 146, and a fixing device 148.
感光体ドラム139は、回転軸を中心に回転する。感光体ドラム139は、外周面側に感光層を有する。帯電装置140は、感光体ドラム139の前記感光層を所定の電位に帯電する。露光装置142は、画像データに基づいて、感光体ドラム139の前記感光層にレーザー光を照射して露光する。その結果、感光体ドラム139に静電潜像が形成される。 The photoconductor drum 139 rotates about a rotation axis. The photoconductor drum 139 has a photosensitive layer on the outer peripheral surface side. The charging device 140 charges the photosensitive layer of the photoconductor drum 139 to a predetermined potential. The exposure apparatus 142 irradiates the photosensitive layer of the photoconductor drum 139 with laser light to expose the photosensitive layer based on the image data. As a result, an electrostatic latent image is formed on the photoconductor drum 139.
現像装置144は、感光体ドラム139上の静電潜像を現像する。現像装置144は、現像ローラーを有する。前記現像ローラーは、感光体ドラム139にトナーを供給して、感光体ドラム139上の静電潜像を現像する。これにより、感光体ドラム139の外周面にトナー像が形成される。転写装置146は、感光体ドラム139の外周面に形成されたトナー像をシートに転写する。定着装置148は、シートを加熱および加圧して、当該シートに転写されたトナー像をシートに定着させる。 The developing device 144 develops an electrostatic latent image on the photoconductor drum 139. The developing device 144 has a developing roller. The developing roller supplies toner to the photoconductor drum 139 to develop an electrostatic latent image on the photoconductor drum 139. As a result, a toner image is formed on the outer peripheral surface of the photoconductor drum 139. The transfer device 146 transfers the toner image formed on the outer peripheral surface of the photoconductor drum 139 to the sheet. The fixing device 148 heats and pressurizes the sheet to fix the toner image transferred to the sheet to the sheet.
画像形成部20のスレーブプロセッサー12は、レジスター14(図1参照)に書き込まれたデータ(前記制御データ)に基づいて、感光体ドラム139、帯電装置140、露光装置142、現像装置144、転写装置146、および定着装置148を制御する。 The slave processor 12 of the image forming unit 20 has a photoconductor drum 139, a charging device 140, an exposure device 142, a developing device 144, and a transfer device based on the data (the control data) written in the register 14 (see FIG. 1). It controls 146 and the fixing device 148.
搬送部22は、画像形成装置2内の搬送路に沿ってシートを搬送する。搬送部22のスレーブプロセッサー12は、レジスター14(図1参照)に書き込まれたデータ(前記制御データ)に基づいて、搬送部22の各構成を制御する。例えば、搬送部22は搬送ローラーおよび駆動源(例えばモーター)を備える。 The transport unit 22 transports the sheet along the transport path in the image forming apparatus 2. The slave processor 12 of the transport unit 22 controls each configuration of the transport unit 22 based on the data (the control data) written in the register 14 (see FIG. 1). For example, the transport unit 22 includes a transport roller and a drive source (for example, a motor).
原稿搬送部16、原稿読取部18、画像形成部20、および搬送部22の各々には、スレーブプロセッサー12が対応付けられて設置されている。各々のスレーブプロセッサー12は、マスタープロセッサー4から原稿搬送部16、原稿読取部18、画像形成部20、および搬送部22に対するジョブ要求を処理する。 A slave processor 12 is associated with each of the document transport unit 16, the document reading unit 18, the image forming unit 20, and the transport unit 22. Each slave processor 12 processes a job request from the master processor 4 to the document transfer unit 16, the document reading unit 18, the image forming unit 20, and the transport unit 22.
以上説明したように、画像形成装置2では、バッファー24に格納された複数の前記実行要求データの各々に対応する転送データ量に基づいて、マスタープロセッサー4による当該複数の前記実行要求データの処理順序が決定される。これにより、バッファー24に格納された複数の前記実行要求データの処理時間を効率よく短縮することが可能である。 As described above, in the image forming apparatus 2, the processing order of the plurality of execution request data by the master processor 4 is based on the amount of transfer data corresponding to each of the plurality of execution request data stored in the buffer 24. Is determined. As a result, it is possible to efficiently reduce the processing time of the plurality of execution request data stored in the buffer 24.
2 画像形成装置
4 マスタープロセッサー
5 DMAコントローラー
6 メモリー
8 シリアルデータバス
10 機能部
12 スレーブプロセッサー
14 レジスター
16 原稿搬送部
18 原稿読取部
20 画像形成部
22 搬送部
24 バッファー
25 実行指示部
26 順序決定部
27 前処理実行部
2 Image processor 4 Master processor 5 DMA controller 6 Memory 8 Serial data bus 10 Functional unit 12 Slave processor 14 Register 16 Document transfer unit 18 Document reading unit 20 Image forming unit 22 Transfer unit 24 Buffer 25 Execution instruction unit 26 Order determination unit 27 Pre-processing execution unit
Claims (8)
バスに接続されるメモリー及び第2プロセッサーと、
前記バスを介して前記メモリー及び前記第2プロセッサー間でデータを転送するデータ転送処理を実行するデータ転送部と、
前記データ転送処理の実行要求が格納されるバッファーと、を備え、
前記第1プロセッサーは、
前記バッファーに格納された前記実行要求に基づいて前記データ転送部に前記データ転送処理の実行を指示する実行指示部と、
前記バッファーに格納された複数の前記実行要求の各々に対応する転送データ量に基づいて、前記実行指示部による当該複数の前記実行要求の処理順序を決定する順序決定部と、
前記データ転送部による前記データ転送処理の実行中に当該データ転送処理の次に実行される前記データ転送処理に対応する予め定められた前処理を実行する前処理実行部と、
を備える画像形成装置。 With the first processor
The memory connected to the bus and the second processor,
A data transfer unit that executes a data transfer process for transferring data between the memory and the second processor via the bus, and a data transfer unit.
A buffer for storing an execution request for the data transfer process is provided.
The first processor is
An execution instruction unit that instructs the data transfer unit to execute the data transfer process based on the execution request stored in the buffer.
An order determination unit that determines the processing order of the plurality of execution requests by the execution instruction unit based on the amount of transfer data corresponding to each of the plurality of execution requests stored in the buffer.
A pre-processing execution unit that executes a predetermined pre-processing corresponding to the data transfer processing that is executed next to the data transfer processing during the execution of the data transfer processing by the data transfer unit.
An image forming apparatus comprising.
請求項1に記載の画像形成装置。 The order determination unit determines the processing order of a plurality of the execution requests by the execution instruction unit in descending order of the amount of transferred data.
The image forming apparatus according to claim 1.
請求項1に記載の画像形成装置。 The order determination unit sets the processing order of the first execution request whose transfer data amount is less than a predetermined threshold value among the plurality of execution requests than that of the second execution request whose transfer data amount is equal to or more than the threshold value. Subordinate,
The image forming apparatus according to claim 1.
請求項1〜3のいずれかに記載の画像形成装置。 The order determination unit determines the processing order of all the execution requests stored in the buffer, and the processing order of the execution requests stored in the buffer after the determination is stored in the buffer at the time of the determination. Subordinated to the above execution request,
The image forming apparatus according to any one of claims 1 to 3.
請求項1〜3のいずれかに記載の画像形成装置。 When the number of the execution requests stored in the buffer is equal to or less than a predetermined first reference value, the order determination unit determines the processing order of all the execution requests stored in the buffer. Then, the processing order of the execution requests stored in the buffer after the determination is subordinated to the execution requests stored in the buffer at the time of the determination, and the number of the execution requests stored in the buffer is said. When the value exceeds the first reference value, a group composed of the same number of execution requests as the first reference value selected in the order of earliest storage in the buffer among all the execution requests stored in the buffer. The processing order is determined within the group, and the processing order of the execution request outside the group stored in the buffer at the time of the determination and the execution request stored in the buffer after the determination is determined from the execution request in the group. To subordinate,
The image forming apparatus according to any one of claims 1 to 3.
請求項4又は5に記載の画像形成装置。 The order determination unit determines the processing order of a plurality of the execution requests stored in the buffer every time all the execution requests whose processing order is determined are processed.
The image forming apparatus according to claim 4 or 5.
請求項4又は5に記載の画像形成装置。 When the number of undetermined execution requests whose processing order is not determined stored in the buffer is equal to or greater than a predetermined second reference value, the order determination unit determines the processing order of the undetermined execution requests. decide,
The image forming apparatus according to claim 4 or 5.
前記第1プロセッサーが、
前記バッファーに格納された前記実行要求に基づいて前記データ転送部に前記データ転送処理の実行を指示する指示ステップと、
前記バッファーに格納された複数の前記実行要求の各々に対応する転送データ量に基づいて、前記指示ステップによる当該複数の前記実行要求の処理順序を決定する決定ステップと、
前記データ転送部による前記データ転送処理の実行中に当該データ転送処理の次に実行される前記データ転送処理に対応する予め定められた前処理を実行する実行ステップと、
を実行するデータ転送方法。 A first processor, a memory connected to a bus, a second processor, a data transfer unit that executes a data transfer process for transferring data between the memory and the second processor via the bus, and the data transfer process. A data transfer method executed by an image forming apparatus including a buffer for storing an execution request of.
The first processor
An instruction step for instructing the data transfer unit to execute the data transfer process based on the execution request stored in the buffer, and
A determination step of determining the processing order of the plurality of execution requests by the instruction step based on the amount of transfer data corresponding to each of the plurality of execution requests stored in the buffer.
During the execution of the data transfer process by the data transfer unit, an execution step of executing a predetermined preprocess corresponding to the data transfer process executed after the data transfer process, and an execution step.
Data transfer method to perform.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019137053A JP2021022055A (en) | 2019-07-25 | 2019-07-25 | Image forming apparatus and data transfer method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019137053A JP2021022055A (en) | 2019-07-25 | 2019-07-25 | Image forming apparatus and data transfer method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021022055A true JP2021022055A (en) | 2021-02-18 |
Family
ID=74573891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019137053A Pending JP2021022055A (en) | 2019-07-25 | 2019-07-25 | Image forming apparatus and data transfer method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021022055A (en) |
-
2019
- 2019-07-25 JP JP2019137053A patent/JP2021022055A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6731650B1 (en) | Data transfer apparatus and its control method | |
JP4402083B2 (en) | Image forming apparatus | |
JP7419715B2 (en) | Image forming device, data consistency determination method | |
US8799910B2 (en) | Data processing using different data formats based on shared resource utilization | |
US20080086587A1 (en) | Data save apparatus and data save method | |
JP2021022055A (en) | Image forming apparatus and data transfer method | |
JP2021047668A (en) | Image forming apparatus and data communication method | |
JP4653048B2 (en) | Printing control apparatus, printing apparatus including the same, and printing control method | |
JP2013024887A (en) | Correction device, image forming device, image forming system, and program | |
JP5247230B2 (en) | Image forming apparatus, control method therefor, and program | |
JP5162515B2 (en) | Image processing device | |
JP6033183B2 (en) | Image forming apparatus and method for starting image forming apparatus | |
JP2018062157A (en) | Image formation apparatus, information processing apparatus and program | |
JP3967074B2 (en) | Image processing apparatus and image forming apparatus | |
JP2020077046A (en) | Image forming device | |
JP4669673B2 (en) | Memory exclusive control device, image processing device, and image forming device | |
JP7443847B2 (en) | Electronic equipment, communication equipment, communication abnormality detection method | |
JP2021022054A (en) | Image forming apparatus and communication method | |
US11693730B2 (en) | Replaceable unit and apparatus to which the replaceable unit is attached | |
JP3878805B2 (en) | Image processing apparatus, image processing method, and storage medium | |
JP2006174247A (en) | Image input/output device, image processing method, computer-readable storage medium with program stored thereon and the program | |
JP2013196652A (en) | Control device and image forming apparatus | |
JP6115226B2 (en) | Control device, image forming apparatus, and determination method | |
JP2010028428A (en) | Image processing apparatus | |
JP5699732B2 (en) | Information processing apparatus and program |