JP2006301797A - Data communication controller, data communication control method, and program - Google Patents
Data communication controller, data communication control method, and program Download PDFInfo
- Publication number
- JP2006301797A JP2006301797A JP2005120063A JP2005120063A JP2006301797A JP 2006301797 A JP2006301797 A JP 2006301797A JP 2005120063 A JP2005120063 A JP 2005120063A JP 2005120063 A JP2005120063 A JP 2005120063A JP 2006301797 A JP2006301797 A JP 2006301797A
- Authority
- JP
- Japan
- Prior art keywords
- data
- information
- area
- packet
- memory
- 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
Images
Landscapes
- Communication Control (AREA)
Abstract
Description
本発明は、ホストコンピュータから受信した印刷画像データをバッファして、印刷装置に送信する際の制御を実行するデータ通信制御装置、データ通信制御方法及びプログラムに関する。 The present invention relates to a data communication control device, a data communication control method, and a program for executing control when buffering print image data received from a host computer and transmitting it to a printing device.
従来のプリンタは、プリンタに接続されたコンピュータから印刷指示のあった場合、コンピュータ内で印刷画像の情報をページ記述言語で記述された印刷データに変換して、当該印刷データをプリンタに転送する。プリンタでは、プリンタに組み込まれた専用のハードウェア回路などによって印刷データにレンダリング処理を施し、形成されたドットイメージデータをプリントエンジンの紙搬送に同期して半導体レーザユニットに転送し、レーザ照射によって感光ドラムに帯電させて、違う極に帯電したトナーを付着させ、搬送されてきた紙に転写し、ヒーターによる熱で定着させて画像を印刷出力する。 When there is a print instruction from a computer connected to the printer, a conventional printer converts print image information into print data described in a page description language in the computer, and transfers the print data to the printer. In the printer, the print data is rendered by a dedicated hardware circuit incorporated in the printer, and the formed dot image data is transferred to the semiconductor laser unit in synchronization with the paper transport of the print engine. The drum is charged, and charged toner is attached to a different pole, transferred onto the conveyed paper, and fixed with heat from a heater, and an image is printed out.
電子写真方式を用いたレーザプリンタにおいて、ホストベースと呼ばれる技術がある。ホストベースプリンタではレンダリング処理をホストコンピュータのソフトウェアで実行する。ホストコンピュータでは、レンダリング処理、画像処理及び高圧縮処理を施した後、プリントエンジンの半導体レーザユニットが感光ドラムに照射するデータ順に、印刷画像データをホストベースプリンタに転送する。ホストベースプリンタは、適度な容量のバッファ及び伸張回路を備えており、ホストコンピュータから転送されてきた印刷画像データを伸張しながら、プリントエンジンに同期してFIFOでドットイメージデータをレーザユニットに転送する。 In a laser printer using an electrophotographic system, there is a technique called a host base. In the host base printer, rendering processing is executed by software of the host computer. In the host computer, after performing rendering processing, image processing, and high compression processing, the print image data is transferred to the host base printer in the order of data irradiated to the photosensitive drum by the semiconductor laser unit of the print engine. The host-based printer has a buffer and expansion circuit with an appropriate capacity, and transfers the dot image data to the laser unit by FIFO in synchronization with the print engine while expanding the print image data transferred from the host computer. .
ホストベースプリンタの場合、ホストコンピュータ側のソフトウェアでレンダリング処理及び必要な画像処理がなされるため、ホストベースプリンタ側のハードウェアリソースの削減が可能となる。また、ホストベースプリンタは、ホストコンピュータからの印刷画像データの受信と同時に、印刷画像データの伸張、そしてプリントエンジンへのドットイメージデータの転送を行う仕組みとなっているため、内蔵されるバッファは1ページ全て分のデータを保持する必要はなく、小容量のバッファで済む。しかし、一度印刷をスタートしたらデータ転送の遅延は許されず、特に印刷速度の速いプリントエンジンの場合、印刷画像データの高速転送が必要となる。そのため、最近ではUSB2.0のHSモードを採用したホストベースプリンタが増えている。 In the case of a host-based printer, since rendering processing and necessary image processing are performed by software on the host computer side, hardware resources on the host-based printer side can be reduced. In addition, since the host base printer has a mechanism for expanding the print image data and transferring the dot image data to the print engine simultaneously with the reception of the print image data from the host computer, the built-in buffer is one. It is not necessary to hold the data for all the pages, and a small buffer is sufficient. However, once printing is started, data transfer is not allowed to be delayed, and particularly in the case of a print engine having a high printing speed, high-speed transfer of print image data is required. Therefore, recently, host-based printers that use USB 2.0 HS mode are increasing.
近年、ホストベースプリンタでも4Dカラーエンジンが採用され始めている。この4Dカラーエンジンは、C(シアン)、M(マゼンタ)、Y(イエロー)、K(ブラック)それぞれの色に対してレーザ及び感光ドラムが用意され、搬送されてくる紙にそれぞれトナーを付着した感光ドラムからトナーを転写し、最後に一度に定着を施す仕組みとなっている。また、ホストベースにおける4Dカラープリンタの印刷データパスは、それぞれの色ごとにバッファ、伸張回路が用意された構成となっており、ホストコンピュータから転送されてきた印刷画像データを色ごとに各バッファに振り分け、印刷画像データの伸張及びレーザユニットへのドットイメージデータの転送は色ごとに独立して実行される。 In recent years, 4D color engines have begun to be adopted in host-based printers. This 4D color engine has a laser and a photosensitive drum for each color of C (cyan), M (magenta), Y (yellow), and K (black), and attaches toner to the conveyed paper. The toner is transferred from the photosensitive drum and finally fixed at once. The host-based 4D color printer has a print data path in which a buffer and an expansion circuit are prepared for each color, and print image data transferred from the host computer is stored in each buffer for each color. The sorting, the expansion of the print image data, and the transfer of the dot image data to the laser unit are executed independently for each color.
また一方で、ホストベースプリンタの低コスト性に加え、益々の印刷速度の高速化に伴い、オフィスなどのビジネスシーンでの需要が高まってきている。オフィスでのプリンタ使用状況は、LANケーブルによる接続が一般的であり、そのためプリンタのネットワーク対応化が望まれる。プリンタのネットワーク印刷は、ネットワークプロトコルの処理と、印刷データをホストコンピュータから受け取ってプリンタに転送する処理、を兼ね備えたプリントサーバが必要となる。(例えば、特許文献1参照。)
ホストベースプリンタの場合、前述のように一度印刷スタートをかけたら、プリントエンジンの紙搬送速度に対して印刷画像データの転送に遅延が発生すると、正しい印刷が実行されない。従って、ホストベースプリンタにおけるネットワーク印刷の実行は、プリントサーバが極力ボトルネックとならないような構成であることが望まれる。 In the case of a host-based printer, once printing is started as described above, if printing image data transfer is delayed with respect to the paper transport speed of the print engine, correct printing is not executed. Therefore, it is desirable that the network printing in the host-based printer is configured so that the print server does not become a bottleneck as much as possible.
しかしながら、4Dカラーエンジンのホストベースプリンタでのネットワーク印刷に関しては、プリントサーバの印刷画像データの処理が単純なFIFOによる転送であっては、システムのデータ転送に遅延が生じる問題がある。それは例えば、ホストベースプリンタのバッファが、シアン用のバッファは飽和状態で且つイエロー用のバッファはわずかなデータ量しか保持していない状況で、FIFOの先頭にあるのがシアンの印刷画像データである場合、シアンの印刷画像データがFIFOの先頭で詰まってしまい、イエローの印刷画像データのデータ転送が間に合わない可能性が生じる。特に印刷速度の速いプリントエンジンの場合は、データ転送のさらなる高速化が望まれるため、上記のような状況であるとオーバーランを引き起こしてしまう可能性が高くなる。また、色によってバッファの詰まり方に違いが生じるのは、ホストコンピュータで施される圧縮の圧縮率が色ごとに異なる場合があるためである。 However, with respect to network printing by a host-based printer of a 4D color engine, there is a problem that a delay occurs in the data transfer of the system even if the print image data of the print server is transferred by a simple FIFO. For example, when the buffer of the host base printer is in a saturated state and the buffer for yellow holds only a small amount of data, the print image data for cyan is at the head of the FIFO. In this case, there is a possibility that the cyan print image data is clogged at the head of the FIFO, and the data transfer of the yellow print image data is not in time. In particular, in the case of a print engine having a high printing speed, it is desired to further increase the speed of data transfer. Further, the reason why the buffer clogging differs depending on the color is because the compression rate of the compression performed by the host computer may differ for each color.
上記のような場合、シアン以外の色の印刷画像データを先に送る仕組みがプリントサーバにあれば、プリンタがオーバーランを引き起こす可能性は低くなる。プリンタ側は印刷出力までの印刷データパスが色ごとにわけられて独立で処理している構成であるため、ホストコンピュータから転送されてくる印刷データの順番が色ごとに守られていれば問題はない。 In such a case, if the print server has a mechanism for sending print image data of a color other than cyan first, the printer is less likely to cause an overrun. Since the printer side is configured so that the print data path to the print output is divided for each color and processed independently, the problem is that the order of the print data transferred from the host computer is kept for each color. Absent.
従って、本発明の目的は、例えば4Dカラーエンジンを採用したホストベースプリンタにおけるネットワーク印刷において、印刷画像データの圧縮率の差が色ごとに大きい場合でも、ホストコンピュータから転送されてくる印刷データの順番を色ごとに守ったデータ転送をプリンタに対して行えるようにするために、データ転送の遅延の発生を抑制することができるデータ通信制御装置、データ通信制御方法及びプログラムを提供することにある。 Accordingly, an object of the present invention is to perform the order of print data transferred from a host computer even in the case of network printing in a host-based printer employing a 4D color engine, even if the difference in compression rate of print image data is large for each color. Is to provide a data communication control device, a data communication control method, and a program capable of suppressing the occurrence of a data transfer delay in order to enable the printer to perform data transfer for each color.
上記目的を達成するため、請求項1のデータ通信制御装置は、情報処理装置と画像形成装置との間でデータの通信を制御するデータ通信制御装置において、前記情報処理装置からデータを受信する受信手段と、前記受信手段により受信されたデータを複数の領域のいずれかに格納する格納手段と、前記画像形成装置に前記格納されたデータを送信する送信手段と、前記格納手段におけるデータの格納状況を記憶する管理テーブル手段と、前記画像形成装置から、前記画像形成装置の状況を示す装置情報を取得する装置情報取得手段と、前記管理テーブル手段を参照することで、前記格納手段におけるデータの格納状況に応じて、前記受信手段が受信したデータを格納する領域を決定し、領域の決定に従って前記管理テーブル手段を更新すると共に、前記管理テーブル手段と前記装置情報取得手段が取得した装置情報とを参照することで、前記格納手段におけるデータの格納状況及び前記画像形成装置の状況に応じて、前記送信手段によって送信されるデータを格納する領域を決定し、領域の決定に従って前記管理テーブル手段を更新する制御手段とを備えることを特徴とする。
To achieve the above object, a data communication control device according to
請求項10のデータ通信制御方法は、情報処理装置と画像形成装置との間でデータの通信を制御するデータ通信制御装置で実行されるデータ通信制御方法において、前記情報処理装置から前記データを受信したか否かを判断する受信判断ステップと、前記受信判断ステップにおいて受信したと判断された場合、当該受信したデータの情報を保持し、且つ受信した該データを格納するメモリのメモリアドレスを発生させる受信手続きステップと、前記受信手続きステップにおいてメモリアドレスを発生させたデータの前記メモリへの格納が終了したか否かを判断する受信終了判断ステップと、前記受信終了判断ステップにおいて、前記受信したデータの前記メモリへの格納が終了したと判断した場合、前記受信手続きステップにおいて保持していたデータの情報と前記情報処理装置からの受信順番が最も遅いとした受信順番情報とによってメモリ管理テーブルを更新する第1メモリ管理テーブル更新ステップと、前記メモリ管理テーブルと前記画像形成装置から取得された装置情報に応じて、前記画像形成装置に送信可能なデータがあるか否かを判断する送信判断ステップと、前記送信判断ステップにおいて送信可能なデータがあると判断した場合、前記メモリ管理テーブルを元に、送信するデータを決定し、該データを格納している格納領域のメモリアドレスを発生させる送信手続きステップと、前記送信手続きステップにおいて、メモリアドレスを発生させたデータの前記画像形成装置への送信が終了したか否かを判断する送信終了判断ステップと、前記送信終了判断ステップにおいて前記データの前記画像形成装置への送信が終了したと判断した場合、前記メモリ管理テーブルにおける該データが格納されていた格納領域の情報に関して、データの受信順番が最も遅いとした空き領域のデータの受信順番情報と、色情報及びデータサイズ情報をクリアすることで更新する第2メモリ管理テーブル更新ステップとを備え、前記データの複数から成る1つの印刷ジョブデータを全て前記画像形成装置に送信するまで前記複数のステップを繰り返すことを特徴とする。 The data communication control method according to claim 10, wherein the data communication control method is executed by a data communication control device that controls data communication between the information processing device and the image forming device, and receives the data from the information processing device. A reception determination step for determining whether or not the data has been received, and if it is determined that the data has been received in the reception determination step, information on the received data is retained and a memory address of a memory for storing the received data is generated. In the reception procedure step, the reception end determination step for determining whether or not the storage of the data for which the memory address was generated in the reception procedure step has been completed, and the reception end determination step, the received data If it is determined that the storage in the memory has been completed, A first memory management table update step for updating the memory management table with the information on the received data and the reception order information indicating that the reception order from the information processing apparatus is the slowest, and is acquired from the memory management table and the image forming apparatus. When it is determined that there is data that can be transmitted to the image forming apparatus according to the device information, and when there is data that can be transmitted in the transmission determination step, the memory management table is Originally, a transmission procedure step for determining data to be transmitted and generating a memory address of a storage area storing the data, and in the transmission procedure step, the data for which the memory address has been generated is sent to the image forming apparatus. A transmission end determination step for determining whether or not transmission has ended, and a transmission end determination step. If it is determined that the transmission of the data to the image forming apparatus has been completed, the data in the empty area that has the latest data reception order with respect to the information on the storage area in which the data is stored in the memory management table And a second memory management table update step for updating by clearing the color information and the data size information, and transmitting all the one print job data composed of the plurality of data to the image forming apparatus. The plurality of steps are repeated until the above.
請求項11のプログラムは、情報処理装置と画像形成装置との間でデータの通信を制御するコンピュータで実行されるプログラムにおいて、前記情報処理装置から前記データを受信したか否かを判断する受信判断モジュールと、前記受信判断モジュールにおいて受信したと判断された場合、当該受信したデータの情報を保持し、且つ受信した該データを格納するメモリのメモリアドレスを発生させる受信手続きモジュールと、前記受信手続きモジュールにおいてメモリアドレスを発生させたデータの前記メモリへの格納が終了したか否かを判断する受信終了判断モジュールと、前記受信終了判断モジュールにおいて、前記受信したデータの前記メモリへの格納が終了したと判断した場合、前記受信手続きモジュールにおいて保持していたデータの情報と前記情報処理装置からの受信順番が最も遅いとした受信順番情報とによってメモリ管理テーブルを更新する第1メモリ管理テーブル更新モジュールと、前記メモリ管理テーブルと前記画像形成装置から取得された装置情報に応じて、前記画像形成装置に送信可能なデータがあるか否かを判断する送信判断モジュールと、前記送信判断モジュールにおいて送信可能なデータがあると判断した場合、前記メモリ管理テーブルを元に、送信するデータを決定し、該データを格納している格納領域のメモリアドレスを発生させる送信手続きモジュールと、前記送信手続きモジュールにおいて、メモリアドレスを発生させたデータの前記画像形成装置への送信が終了したか否かを判断する送信終了判断モジュールと、前記送信終了判断モジュールにおいて前記データの前記画像形成装置への送信が終了したと判断した場合、前記メモリ管理テーブルにおける該データが格納されていた格納領域の情報に関して、データの受信順番が最も遅いとした空き領域のデータの受信順番情報と、色情報及びデータサイズ情報をクリアすることで更新する第2管理テーブル更新モジュールとを備え、前記データの複数から成る1つの印刷ジョブデータを全て前記画像形成装置に送信するまで前記複数のモジュールの処理を前記コンピュータで繰り返し実行させることを特徴とする。 The program according to claim 11 is a program executed by a computer that controls communication of data between the information processing apparatus and the image forming apparatus, and a reception determination for determining whether or not the data is received from the information processing apparatus. A reception procedure module that holds information of the received data and generates a memory address of a memory that stores the received data when the reception determination module determines that the data has been received; and the reception procedure module In the reception end determination module for determining whether or not the storage of the data generating the memory address in the memory is completed, and in the reception end determination module, the storage of the received data in the memory is completed If it is determined, the data held in the reception procedure module And a first memory management table update module for updating a memory management table with the reception order information indicating that the reception order from the information processing apparatus is the latest, and an apparatus acquired from the memory management table and the image forming apparatus Based on the information, if it is determined that there is data that can be transmitted to the image forming apparatus, and the transmission determination module determines that there is data that can be transmitted, the memory management table is used as a basis. A transmission procedure module that determines data to be transmitted and generates a memory address of a storage area in which the data is stored, and the transmission procedure module transmits data to the image forming apparatus that has generated the memory address. A transmission end determination module for determining whether or not the transmission has ended, and the transmission end determination module. If it is determined that the transmission of the data to the image forming apparatus is completed in the data storage area, the empty area of the memory management table in which the data reception order is the latest is stored in the memory management table. A second management table update module that updates data by clearing data reception order information and color information and data size information, and transmits all the print job data composed of the plurality of data to the image forming apparatus. The processing of the plurality of modules is repeatedly executed by the computer.
本発明によれば、格納手段に格納されたデータのパケットの格納状況又は画像形成装置の状況に応じて、データを格納する領域の決定及び送信するデータを格納している領域の決定が行われるので、データ転送の遅延の発生を抑制することができる。 According to the present invention, an area for storing data and an area for storing data to be transmitted are determined according to the storage state of the packet of data stored in the storage unit or the state of the image forming apparatus. Therefore, occurrence of data transfer delay can be suppressed.
また、データのパケットの送受信のたびに、データの格納状況を記憶する管理テーブルが更新されるので、データ転送の遅延の発生を抑制することができる。 In addition, since the management table storing the data storage status is updated every time a data packet is transmitted / received, the occurrence of a data transfer delay can be suppressed.
以下、本発明を図面を参照して具体的に説明する。 Hereinafter, the present invention will be specifically described with reference to the drawings.
図1は、本発明の実施の形態に係るデータ通信制御装置が適用されたネットワーク印刷システムの構成を示すブロック図である。 FIG. 1 is a block diagram showing a configuration of a network printing system to which a data communication control device according to an embodiment of the present invention is applied.
ネットワーク印刷システムは、ホストコンピュータ100〜102、LAN200及びネットワークカード300を有する印刷装置400を備えている。
The network printing system includes a
ホストコンピュータ100〜102は、LAN200などのネットワークを介してデータ通信制御装置としてのネットワークカード300を有する印刷装置400に接続される。ホストコンピュータ100は印刷を行う際にまず印刷装置400を占有する。それから、印刷画像データにレンダリング処理や圧縮処理を施し、色情報及びパケットサイズ情報を付加した印刷画像データのパケットを生成して、ネットワークカード300にパケットを次々と送信する。ネットワークカード300はパケットをバッファしながら適宜印刷装置400に転送する。1ジョブの印刷が終了するまで印刷装置400は占有される。
The
図2は、ネットワークカード300の概略構成を示すブロック図である。
FIG. 2 is a block diagram showing a schematic configuration of the
ネットワークカード300は、プロトコル制御部301、CPU302、印刷画像データ制御部303、メモリ管理テーブル304、メモリコントローラ305、メモリ306及びプリンタI/F制御部307を備えている。
The
ネットワークカード300は、ホストコンピュータ100からLAN200を介して転送された印刷画像データのパケットをプロトコル制御部301で受信し、プロトコル処理を実行する。
The
この際、CPU302は、プロトコル処理には関与せず、印刷制御コマンドやネットワーク管理アプリケーション等の処理を行う。印刷画像データ制御部303は、プロトコル制御部301から受信通知を受けたら、メモリ306のパケット格納状況を管理しているメモリ管理テーブル304を参照し、メモリ306に空き領域が存在していれば受信を許可して格納先のアドレスを生成する。受信を許可された印刷画像データのパケットは、メモリコントローラ305を介してメモリ306に格納される。プリンタI/F制御部307は、印刷装置400の印刷画像データバッファ領域の空き情報を定期的に取得しており、必要に応じて印刷画像データ制御部303に通知する。印刷画像データ制御部303はこの印刷装置の印刷画像データバッファ領域の空き情報と、メモリ管理テーブル304を参照し、送信可能なパケットがあれば、そのパケットが格納されているメモリ306の格納先アドレスをプリンタI/F制御部307に対して発生させる。プリンタI/F制御部307は、メモリコントローラ305を介して受け取ったアドレスに格納されているパケットを読み出し、印刷装置400に転送する。また、印刷画像データ制御部303は、印刷画像データのパケットのメモリ306への格納が完了した場合又はメモリ306からの読み出しが完了した場合に、メモリ管理テーブル304の情報を更新することで、常にメモリ306におけるパケットの格納状況を保持させている。
At this time, the
図3は、印刷装置400の概略構成を示すブロック図である。
FIG. 3 is a block diagram illustrating a schematic configuration of the
印刷装置400は、NICI/F401、CPU402、操作パネル403、メモリコントローラ404、メモリ405、データ伸張部406、エンジンI/F制御部407及びプリントエンジン408を備えている。
The
NICI/F401はネットワークカード300から転送されたパケットを受信する。CPU402は受信したパケットを解析し、ヘッダーを剥いで圧縮画像データのみをメモリコントローラ404に渡す。また、操作パネル部403の制御も行う。メモリコントローラ404は圧縮画像データをメモリ405にバッファし、順次データ伸張部406に渡していく。データ伸張部406はホストコンピュータ100から受信した圧縮画像データの伸張を行う。エンジンI/F制御部407は、プリントエンジン408との制御信号のやりとりや印刷画像データの転送を行う。
The NIC I /
図4は、印刷画像データのパケットの構成を示す図である。 FIG. 4 is a diagram illustrating a configuration of a packet of print image data.
印刷画像データのパケットは、ホストコンピュータ100で印刷画像データにレンダリング処理や圧縮処理を施した後、これらの処理が施された印刷画像データに色情報およびパケットサイズ情報を含むヘッダーをつけて生成される。パケットの最大サイズはあらかじめ設定されており、その値を超えることはない。各パケットは、色ごとに印字出力される順番を守ってホストコンピュータ100からネットワークカード300に向けて送信されるため、ネットワークカード300は色ごとにホストコンピュータ100からの受信順番通りに印刷装置400に転送する必要がある。
The print image data packet is generated by rendering and compressing the print image data in the
図5(A)は、メモリ管理テーブル304及びメモリ306のデータ構成を示す概念図であり、特に印刷装置400がホストコンピュータ100によって占有された時のメモリ管理テーブル304及びメモリ306の最初の状態を指す(以下、この最初の状態を「初期状態」という)。すなわち、印刷画像データのパケットの転送がホストコンピュータ100から始まる前である。図5(B)はパケット受信領域管理レジスタ3031の構成を示す図であり、図5(C)は空き領域管理レジスタ3032の構成を示す図である。
FIG. 5A is a conceptual diagram showing the data configuration of the memory management table 304 and the
ここでは印刷画像データのパケットの最大値が仮に64Kバイトであるとし、メモリ306はそのパケットが最大96個格納できるサイズをもつとする。すなわちパケットのバッファ領域は6Mバイトである。
Here, it is assumed that the maximum value of a packet of print image data is 64 Kbytes, and the
メモリ管理テーブル304はメモリ306の格納情報を管理するテーブルデータである。同図に示すように、メモリ306のパケット格納領域96個の各々の先頭アドレス0x0000_0000〜0x005F_0000は、メモリ管理テーブル304のアドレス情報1〜96に対応しており、メモリ管理テーブル304の各テーブル(行データ)を参照することでそのテーブルのアドレス情報が示すメモリ306の格納領域の情報がわかる。このアドレス情報は、ネットワークカード300の起動時に印刷画像データ制御部303によって書き込まれ、変更されることはない。
A memory management table 304 is table data for managing information stored in the
それぞれのテーブルは、アドレス情報、色情報、パケットサイズ情報及び受信順番情報を備えている。これらの項目は、1個のパケットが送受信されるたびに、必要な更新がなされる。そうすることで、常にメモリ306の最新情報の管理を行うことが可能となる。
Each table includes address information, color information, packet size information, and reception order information. These items are updated as necessary every time one packet is transmitted / received. By doing so, it is possible to always manage the latest information in the
色情報及びパケットサイズ情報は、そのテーブルに対応するメモリ306の格納領域に格納されているパケットの色及びパケット長を示す。図5のように、パケットが格納されていない場合は色情報及びパケットサイズ情報を「0」とする。
The color information and the packet size information indicate the color and packet length of the packet stored in the storage area of the
受信順番情報には、そのテーブルのアドレス情報が示すメモリ306の格納領域にパケットが格納されている場合に、そのパケットの次にホストコンピュータ100から受信したパケットが格納されている領域を管理しているテーブルのアドレス情報が書き込まれている一方、パケットが格納されていない空き領域の場合に、その空き領域の次にホストコンピュータ100から受信したパケットを格納する予定の空き領域を管理しているテーブルのアドレス情報が書き込まれる。
In the reception order information, when a packet is stored in the storage area of the
また、受信順番情報が「0」の場合は、そのテーブルに対応したメモリ306の格納領域がパケットを格納していれば、パケットを格納している領域の内で現時点で最もパケットを受信したのが遅い領域であることを示し、パケットを格納していない空き領域であれば、空き領域の内で現時点で最もパケットを受信するのが遅い領域であることを示す。
Also, when the reception order information is “0”, if the packet is stored in the storage area of the
さらに、パケット受信済みの領域を管理しているテーブルの内、パケット受信順番が最も早い領域と最も遅い領域を管理しているテーブルをパケット受信領域管理レジスタ3031で、また、空き領域を管理しているテーブルの内、パケット受信順番が最も早い領域と最も遅い領域を管理しているテーブルを空き領域管理レジスタ3032で、常に保持する。これらのパケット受信領域管理レジスタ3031及び空き領域管理レジスタ3032は印刷画像データ制御部303に含まれている。
Further, among the tables managing the areas where packets have been received, the table managing the areas where the packet reception order is the earliest and the latest is managed by the packet reception
図5(B)におけるパケット受信領域管理レジスタ3031の上段は受信順番が最も早いパケット格納領域を管理しているテーブルであり、下段は最も遅いパケット格納領域を管理しているテーブルである。また、空き領域管理レジスタ3032の上段は受信順番が最も早い空き領域を管理しているテーブルであり、下段は最も遅い空き領域を管理しているテーブルである。
The upper part of the packet reception
これらのレジスタでパケット格納領域と空き領域のそれぞれの順番の最初と最後を管理しているため、メモリ管理テーブル304のアドレス情報及び受信順番情報と合わせて、メモリ306のパケット格納領域と空き領域の順番管理を行うことが可能となる。
Since these registers manage the beginning and end of the order of the packet storage area and the free area, together with the address information and the reception order information of the memory management table 304, the packet storage area and the free area of the
図5は初期状態を示すため、メモリ306の格納領域は当然全て空き領域である。
Since FIG. 5 shows an initial state, the storage area of the
受信順番情報は、印刷画像データ制御部303によって図5のように「アドレス情報」に1を加えた値が書き込まれる。ただし、アドレス情報が「96」のテーブルの受信順番情報には「0」を書き込み、初期状態ではパケットを受信する順番が最も遅い領域を管理しているテーブルとする。パケット受信領域管理レジスタ3031には、パケットを受信している領域がメモリ306内に存在しないため、起動時には全ての項目に「0」を書き込む。また、空き領域管理レジスタ3032の上段には、受信順番が最も早い空き領域を管理しているテーブル、すなわちアドレス情報が「1」のテーブルを、空き領域管理レジスタ3032の下段には、受信順番が最も遅い空き領域を管理しているテーブル、すなわちアドレス情報が「96」のテーブルを、それぞれ起動時に書き込む。
As the reception order information, a value obtained by adding 1 to “address information” is written by the print image
以上より、起動時においては、メモリ管理テーブル304、パケット受信領域管理レジスタ3031、空き領域管理レジスタ3032、各々を図5のように設定することで、ホストコンピュータ100から受信した印刷画像データパケットを、アドレス情報が「1」→「2」→…… →「96」の順にメモリ306に格納させるようにする。
As described above, at startup, the memory management table 304, the packet reception
また、以上の説明では、メモリ管理テーブル304を、パケット受信領域管理レジスタ3031及び空き領域管理レジスタ3032と共に活用することで、メモリ306のパケット格納領域及び空き領域の順番管理を行うことを述べた。以下、パケットの送受信に伴うメモリ管理テーブル304の具体的な更新方法を述べるが、その前にここで順番管理を行う理由を説明する。
In the above description, the memory management table 304 is used together with the packet reception
図1のネットワーク印刷システムにおいて、印刷装置400は4Dカラーエンジンを備え、各色ごとに処理するチャネルを設け、印刷画像データのパケットの並列処理を行う。元々ホストコンピュータ100で圧縮されているパケットを印刷装置400で伸張するため、圧縮率の差から色ごとにデータ処理量が異なってくるので、仮にネットワークカード300がFIFO構造であるとしたら、次に印刷装置400に転送するパケットに対応する色が印刷装置400ではチャネルのバッファが飽和状態の色である場合、そこでデータ転送は一時停止してしまい、システムのボトルネックとなる。
In the network printing system of FIG. 1, the
従って、システムの転送パフォーマンスを向上させるために、ネットワークカード300から印刷装置400へのパケット送信を、送信可能な色から順次行えるようにする。印刷装置400は、色ごとにホストコンピュータ100からの転送順番が守られていれば問題はないため、ネットワークカード300は色ごとのFIFO構造であることがシステムの状況を考慮した時、パフォーマンスを維持するためには最も好ましい。
Therefore, in order to improve the transfer performance of the system, packet transmission from the
順番管理はそのためのものである。例えば、ある時点でネットワークカード300に格納されているパケットの内、印刷装置400にシアン以外の色が送信できない状況においても、パケットの受信順番が管理されていることで、即座に最も受信順番が早いシアンのパケットが格納されている領域を検索することが可能となる。
Order management is for that purpose. For example, among the packets stored in the
順番管理の概要であるが、パケットの受信に関しては、管理している空き領域の順番通りにパケットを格納していく。しかし、前述のようにパケットの送信に関しては、管理しているパケット格納領域のパケット受信順番通りに行われるわけではない。基本的には順番通りに行われる様に制御されるが、印刷装置400の状況に応じては、ランダムな順番で送信される可能性も有り得る。そのような場合にも、色ごとのFIFO構造を実現するためにしっかりとした順番管理を行うことが可能なようにメモリ管理テーブル304を更新していく。
The outline of the order management is as follows. Regarding the reception of packets, the packets are stored in the order of the managed free areas. However, as described above, packet transmission is not performed in the order of packet reception in the managed packet storage area. Basically, the control is performed so as to be performed in the order, but depending on the situation of the
更新の規則としては、パケットの受信の場合は、空き領域の内で順番が最も早い領域にパケットを格納し、その後、パケット格納領域の内で最も遅い順番として順番管理し、パケットの送信の場合は、送信されたパケットを格納していた領域を、送信前までパケット格納領域の順番管理下であったのに対して、空き領域の内で最も遅い順番として順番管理する。 As a rule of update, in the case of packet reception, the packet is stored in the earliest area in the free area, and then the order is managed as the latest order in the packet storage area. Manages the order in which the transmitted packet is stored as the latest order in the free area, while the order in the packet storage area is under the control before transmission.
図6(A)は、パケットの送受信がある程度行われた後のメモリ管理テーブル304及びメモリ306の概念図を示す。図6(B)はパケット受信領域管理レジスタ3031の構成を示す図であり、図6(C)は空き領域管理レジスタ3032の構成を示す図である。
FIG. 6A shows a conceptual diagram of the memory management table 304 and the
メモリ306におけるパケットの格納領域内で、現時点でパケットを受信した順番は、メモリ管理テーブル304のアドレス情報が示す「1」→「2」→「3」→「4」→「6」→「7」→「8」→…→「95」の順番であり、メモリ306における空き領域内で、現時点でパケットを受信する順番は、アドレス情報が示す「96」→「5」の順番で、96個の領域の内、2個の領域のみであることがわかる。
Within the packet storage area in the
以下に、図2、図3、図5〜9を参照しながら、パケットを送受信する際の印刷画像データ制御部303の制御及びメモリ管理テーブル304の更新方法を記述する。
Hereinafter, the control of the print image
〔パケットを受信する場合〕
図2において、ホストコンピュータ100からネットワークカード300のプロトコル制御部301が印刷画像データのパケットを受信し、印刷画像データ制御部303に対して受信通知を出す。
[When receiving a packet]
In FIG. 2, the
印刷画像データ制御部303は、メモリ306に空き領域が存在することを確認したら、パケットのヘッダー、すなわち、パケットの色情報及びパケットサイズ情報を要求し、これを受け取った後は不図示のレジスタに保持して、空き領域管理レジスタ3032の上段のテーブルに対応するメモリ306の領域(すなわち、メモリ306の空き領域の内で最もパケット受信順番が早い領域。図5においてはメモリ管理テーブル304のテーブル「1」に対応する領域。)のアドレスをプロトコル制御部301に発生させる。受信したパケットはプロトコル制御部301からメモリコントローラ305を介して、メモリ306内の指定したアドレスに格納される。
When the print image
メモリ306に該受信パケットが格納されたら、プロトコル制御部301から印刷画像データ制御部303へ、受信完了の通知が届く。印刷画像データ制御部303はこの通知を認識したら、メモリ管理テーブル304の更新を行う。
When the received packet is stored in the
この更新は、該受信パケットを格納した領域に関して、格納直前までは空き領域の内で最もパケット受信順番が早い領域として管理していたものを、パケット受信済みの領域の内で最もパケット受信順番が遅い領域として管理することである。 In this update, with respect to the area where the received packet is stored, the area that has been managed as the area with the earliest packet reception order in the empty area until immediately before the storage, the packet reception order is the highest among the areas that have received the packet. It is to manage as a slow area.
具体的には、図7において、網掛けの部分が図6の状態からパケット受信により更新された箇所である。受信したパケットのもつ印刷画像データの色はブラック(K)、パケット長は最大値の64Kバイトの場合の例である。 Specifically, in FIG. 7, the shaded portion is a location updated by packet reception from the state of FIG. In this example, the color of the print image data of the received packet is black (K) and the packet length is the maximum value of 64 Kbytes.
印刷画像データ制御部303はパケットの受信完了通知を受けたら、まず、メモリ306の空き領域の内でパケットの受信順番が最も早い領域を管理するテーブルを見る。すなわち、図6の空き領域管理レジスタ3032の上段のテーブルに対応するメモリ管理テーブル304のアドレス情報が「96」のテーブルの受信順番情報、色情報及びパケットサイズ情報を更新する。
When the print image
図7のアドレス情報「96」のテーブルがメモリ306のパケット受信済み領域の内、最も受信が遅い領域となるため、そのテーブルの受信順番情報には「0」が書き込まれる。色情報及びパケットサイズ情報には、保持していた「K」と「64K」の情報がそれぞれ書き込まれる。
Since the table of the address information “96” in FIG. 7 is the slowest receiving area in the packet received area of the
次に、パケットを受信する前に、メモリ306のパケット受信済み領域の内で最もパケット受信順番が遅かった領域を管理しているテーブル、すなわち、パケット受信領域管理レジスタ3031の下段が保持するテーブルに対応するメモリ管理テーブル304のアドレス情報「95」の「受信順番情報」を更新する必要がある。ここは、パケット受信前は「0」であったのに対し、テーブル「96」がパケットを受信したため、パケット受信順番をつなぐために、「96」が書き込まれる。
Next, before receiving a packet, a table that manages an area in the
最後に、パケット受信領域管理レジスタ3031及び空き領域管理レジスタ3032を最新の情報に更新する。
Finally, the packet reception
以上の手順を踏むことで、パケットを受信した際のメモリ管理テーブル304の更新が完了する。 By following the above procedure, the update of the memory management table 304 when a packet is received is completed.
〔パケットを送信する場合〕
図3の印刷装置400におけるデータ伸張部406及びエンジンI/F制御部407はC、M、Y、Kの各色ごとに構成されているため、それぞれのデータの圧縮率が異なればデータ伸張部406の処理データ量も各色ごとに変わってくる。このことから、データ伸張部406の前段に備え付けられたバッファ(すなわちメモリ405)のデータの減り具合は色ごとに異なる。そのため、図2のネットワークカード300におけるプリンタI/F制御部307は、印刷装置400から定期的に各色のバッファの空き状況の情報(印刷装置情報)を取得し、印刷画像データ制御部303は取得した印刷装置情報とメモリ管理テーブル304を元に、送信するパケットを決定する。
[When sending a packet]
Since the
送信が決定されるパケットの条件は、印刷装置400のバッファに空きのある色であり、且つ、ホストコンピュータ100からの受信がその時点で最も早いことである。従って、ネットワークカード300から印刷装置400への印刷画像データの転送は、色ごとにFIFO構造が守られる形となり、印刷装置400の各色のバッファの空き状況に応じて、送信可能な色から次々と行われることになる。
The condition of the packet determined to be transmitted is that the buffer of the
図8は、メモリ管理テーブル304及びメモリ306のデータ構成を示す概念図であり、図6に示すメモリ管理テーブル304の状態において、各色のパケットを格納するバッファの格納領域の空き数を示す印刷装置情報が、C(シアン)に対し8領域、M(マジェンダ)に対し6領域、Y(イエロー)に対し2領域、K(ブラック)に対し3領域あることを示す場合に、パケットを送信した後のメモリ管理テーブル304の更新状況を示している。図8(B)はパケット受信領域管理レジスタ3031の構成を示す図であり、図8(C)は空き領域管理レジスタ3032の構成を示す図である。
FIG. 8 is a conceptual diagram showing the data structure of the memory management table 304 and the
図8の印刷装置情報は全ての色が送信可能であることを示している。従って、最もホストコンピュータ100からの受信順番が早いパケットを格納している領域は、図6においてパケット受信領域管理レジスタ3031の上段が保持しているテーブル「1」であり、この領域が格納しているパケットを送信するパケットに決定する。
The printing apparatus information in FIG. 8 indicates that all colors can be transmitted. Therefore, the area storing the packet with the earliest reception order from the
送信パケットを決定した後、印刷画像データ制御部303はプリンタI/F制御部307に対して該パケットが格納されているメモリ306のアドレスを発生させる。プリンタI/F制御部307はそのアドレスに基づき、メモリコントローラ305を介して印刷装置400にパケットを送信する。
After determining the transmission packet, the print image
印刷装置400へのパケット転送が完了したら、プリンタI/F制御部307から印刷画像データ制御部303に対して送信完了の通知が届く。この通知を受けて、印刷画像データ制御部303はメモリ管理テーブル304の更新を行う。
When the packet transfer to the
この更新は、送信したパケットを格納していたメモリ306内の領域を、送信前まではパケット格納領域として管理していたのに対し、空き領域の内で最もパケットを受信する順番が遅い領域として管理することである。
In this update, the area in the
具体的には、図8において、網掛けの部分が図6の状態からパケット送信により更新された箇所である。前述のように送信したパケットを管理していたテーブルはアドレス情報が「1」のテーブルである。該テーブルの色情報及びパケットサイズ情報には「0」を書き込み、「受信順番情報」には、該テーブルが管理している領域を、空き領域の内で最もパケットの受信順番の遅い領域とするため、「0」を書き込む。さらに、図6より、パケット送信前に最も受信順番が遅いとされていた空き領域を管理しているテーブル「5」の次の順番に、今回のパケット送信により空き領域となった領域を管理しているテーブル「1」をつなげるため、テーブル「5」の受信順番情報に「1」を書き込む。最後に、パケット受信領域管理レジスタ3031及び空き領域管理レジスタ3032を最新の情報に更新する。
Specifically, in FIG. 8, the shaded portion is a location updated by packet transmission from the state of FIG. The table that manages the transmitted packets as described above is a table with address information “1”. “0” is written in the color information and packet size information of the table, and in “reception order information”, the area managed by the table is the slowest packet reception area in the free area. Therefore, “0” is written. Further, from FIG. 6, the areas that became free areas by the current packet transmission are managed in the next order of the table “5” that manages the free areas whose reception order was the latest before the packet transmission. In order to connect the existing table “1”, “1” is written in the reception order information of the table “5”. Finally, the packet reception
図8では、印刷装置400側に全ての色パケットを送信することが可能である場合のメモリ管理テーブル304の更新ケースであったが、図9では送信可能な色パケットが限定されている場合のメモリ管理テーブル304の更新ケースを説明する。
8 shows an update case of the memory management table 304 when it is possible to transmit all the color packets to the
図9(A)は、メモリ管理テーブル304及びメモリ306のデータ構成を示す概念図であり、図6において印刷装置情報がC(シアン)に対し0領域、M(マジェンダ)に対し0領域、Y(イエロー)に対し3領域、K(ブラック)に対し0領域であることを示す場合のメモリ管理テーブル304の更新状況を示している。図9(B)はパケット受信領域管理レジスタ3031の構成を示す図であり、図9(C)は空き領域管理レジスタ3032の構成を示す図である。
FIG. 9A is a conceptual diagram showing the data configuration of the memory management table 304 and the
まず、送信パケットの決定であるが、印刷装置情報より送信可能な色パケットがYに限定されているため、ホストコンピュータ100からの受信順番が最も早いYのパケットを格納している領域を管理しているテーブルを検索する。その方法として、まずパケット受信領域管理レジスタ3031の上段で保持しているテーブルから順番にYを格納している領域を管理しているテーブルを探していく。メモリ管理テーブル304の受信順番情報をたどっていくことで、テーブル「4」ではじめてYを格納していることがわかるので、このテーブルが管理している領域が格納しているパケットを、送信パケットとして決定し、プリンタI/F制御部307へアドレスを発生させる。
First, regarding the determination of the transmission packet, since the color packets that can be transmitted from the printing apparatus information are limited to Y, the area storing the Y packet with the earliest reception order from the
印刷装置400へのパケット転送が終了したら、メモリ管理テーブル304を図9の網掛けの部分のように更新する。この更新は、テーブル「4」が管理する領域を、パケット格納領域としての順番管理から、空き領域の内で最もパケットの受信順番が遅い領域としての順番管理に変更すると同時に、テーブル「4」が管理する領域がパケット格納領域の順番の途中から抜けるため、図6のパケット送信前に、メモリ306におけるパケット格納領域の内、パケットの受信順番がテーブル「4」が管理している領域より1つ前のものと1つ後のもの、すなわち、テーブル「3」とテーブル「6」の順番をつなげる管理をすることである。
When the packet transfer to the
具体的にはまず、パケットを送信する前に、パケットの受信順番が、テーブル「4」の管理する領域よりも1つ前であった領域を管理しているテーブル「3」の受信順番情報に「6」を書き込む。続いて、テーブル「4」の色情報とパケットサイズ情報に「0」を書き込み、受信順番情報には、該テーブルが管理している領域を空き領域の内で最もパケットの受信順番の遅い領域とするため、「0」を書き込む。さらに、パケット送信前に最も受信順番が遅いとされていた空き領域を管理しているテーブル「5」の次の順番に、今回のパケット送信により空き領域となった領域を管理しているテーブル「4」をつなげるため、テーブル「5」の受信順番情報に「4」を書き込む。最後に、パケット受信領域管理レジスタ3031及び空き領域管理レジスタ3032を最新の情報に更新する。
Specifically, first, before transmitting a packet, the reception order information of the table “3” managing the area where the reception order of the packet is one area before the area managed by the table “4” is changed. Write “6”. Subsequently, “0” is written in the color information and the packet size information of the table “4”, and the reception order information includes the area managed by the table as the area with the slowest packet reception order among the free areas. Therefore, “0” is written. Furthermore, the table “5” that manages the free area that was considered to be the latest in the receiving order before the packet transmission is followed by the table “ In order to connect “4”, “4” is written in the reception order information of the table “5”. Finally, the packet reception
以上の手順を踏むことで、パケットを送信した際のメモリ管理テーブル304の更新が完了する。 By following the above procedure, the update of the memory management table 304 when the packet is transmitted is completed.
図10は、印刷画像データ制御部303で実行されるフローチャートである。
FIG. 10 is a flowchart executed by the print image
印刷ジョブが印刷装置400に投げられたら、メモリ管理テーブル304の初期化を行う(ステップS501)。
When the print job is thrown to the
プロトコル制御手段301がパケットを受信したか否か、又は印刷画像データのパケットの格納領域にパケットが格納可能であるか否かの判断を行う(ステップS502)。
It is determined whether or not the
ステップS502でパケットを受信可能と判断した場合、印刷画像データのパケットの色情報及びパケットサイズ情報を保持すると共に、メモリ管理テーブル304を参照し、メモリの空き領域の内で最もパケット格納順番の早い領域を管理しているテーブルのアドレス情報を元にパケット格納先のメモリアドレスをプロトコル制御部301に対して発生する(ステップS503)。プロトコル制御部301は、メモリコントローラ305を介してメモリ306の指定されたメモリアドレスへパケットを格納する。
If it is determined in step S502 that the packet can be received, the color information and the packet size information of the print image data packet are held, and the memory management table 304 is referred to and the packet storage order is the earliest in the free area of the memory. Based on the address information of the table managing the area, the memory address of the packet storage destination is generated for the protocol control unit 301 (step S503). The
ステップS503で格納先のメモリアドレスを発生させた印刷画像データのパケットが、メモリへ格納されたか否かの判断を行う(ステップS504)。 It is determined whether or not the packet of the print image data that has generated the storage destination memory address in step S503 is stored in the memory (step S504).
ステップS504においてパケットのメモリへの格納が完了したと判断した場合、ステップS503で保持していたパケットの色情報及びパケットサイズ情報とコンピュータ100からの受信順番が最も遅いとした受信順番情報とによってメモリ管理テーブル304を更新する(ステップS505)。
If it is determined in step S504 that the storage of the packet in the memory is complete, the memory uses the packet color information and packet size information held in step S503 and the reception order information that indicates that the reception order from the
印刷装置400のデータバッファの空き領域情報を参照して印刷装置400に送信可能な領域があるか否か、又はメモリ管理テーブル304を参照してメモリ306に格納されている印刷画像データのパケットが存在するか否かの判断を行う(ステップS506)。
Whether or not there is an area that can be transmitted to the
ステップS506において印刷装置400に送信可能な空きデータバッファ領域が存在し、且つ、メモリ306にパケットが存在したと判断した場合、メモリ管理テーブル304を参照して、送信可能な色の内で最も受信順番が早いパケットを送信するパケットとし、そのパケットが格納されている領域を管理しているテーブルのアドレス情報を元に、メモリアドレスをプリンタI/F制御部307に発生させる(ステップ507)。
If it is determined in step S506 that there is a free data buffer area that can be transmitted to the
次に、ステップS506において印刷装置に送信可能な空きデータバッファ領域が存在し、且つメモリ306にパケットが存在したと判断し、さらにステップS507において送信するパケットが格納されているメモリアドレスを発生させた場合、そのパケットの印刷装置400への送信が完了したか否かを判断する(ステップS508)。
Next, in step S506, it is determined that there is an empty data buffer area that can be transmitted to the printing apparatus and that there is a packet in the
パケットの印刷装置400への送信が完了した場合には、メモリ管理テーブル304において、送信したパケットが格納されていた領域を管理しているテーブルを、空き領域で最も格納順番の遅い管理テーブルとして必要な更新を行う(例えば、色情報及びパケットサイズ情報のクリア)とともに、パケットを格納している領域を管理しているテーブルの内、送信したパケットの1つ前に受信したパケットが格納されている領域を管理しているテーブルの受信順番情報を更新する(ステップS509)。
When transmission of the packet to the
最後に、受信した1ジョブ分の印刷画像データのパケットを全て印刷装置400に送信したか否かを判断する(ステップS510)。印刷装置400に全パケットを送信した場合には、本処理を終了する一方、まだメモリ306内にパケットが残っているか、又は、メモリ306内にパケットはないが、印刷ジョブはまだ終了ではない場合は、ステップS502に戻る。
Finally, it is determined whether or not all received print image data packets for one job have been transmitted to the printing apparatus 400 (step S510). When all packets have been transmitted to the
以上詳細に説明したように、本実施の形態によれば、印刷画像データ制御部303は、前記メモリ管理テーブル304を参照することで、前記メモリ306に格納された印刷画像データのパケットの格納状況に応じてプロトコル制御部301が受信した印刷画像データのパケットのメモリ306への格納を決定し、プロトコル制御部301がメモリコントローラ305を介してメモリ306に受信した印刷画像データのパケットを格納し終えたことを確認し、メモリ管理テーブル304を更新すると共に、メモリ管理テーブル304及びプリンタI/F制御部307が取得した各色のバッファの空き状況の情報を参照することで、メモリ306に格納された印刷画像データのパケットの格納状況及び印刷装置400の状況に応じてプリンタI/F制御部307によって送信される印刷画像データのパケットを決定し、プリンタI/F制御部307がメモリコントローラ305を介してメモリ306から読み出された印刷画像データのパケットを印刷装置400に送信し終えたことを確認し、メモリ管理テーブル304を更新するので、メモリ306のパケットの格納状況及び印刷装置400の状況に応じて逐一メモリ管理テーブル304が更新されることになる。このため、データ転送の遅延の発生を抑制し、圧縮率の悪い印刷画像データに対してもオーバーランを引き起こさないようにすることができる。
As described above in detail, according to the present embodiment, the print image
また、印刷画像データ制御部303は、印刷画像データのパケットを受信し、当該パケットのメモリ306への格納が完了したと判断した場合、パケットの色情報及びパケットサイズ情報とコンピュータ100からの受信順番が最も遅いとした受信順番情報とによってメモリ管理テーブル304を更新する(ステップS505)と共に、パケットの印刷装置400への送信が完了した場合には、メモリ管理テーブル304において、送信したパケットが格納されていた領域を管理しているテーブルを、空き領域で最も格納順番の遅い管理テーブルとして必要な更新を行う(例えば、色情報及びパケットサイズ情報のクリア)とともに、パケットを格納している領域を管理しているテーブルの内、送信したパケットの1つ前に受信したパケットが格納されている領域を管理しているテーブルの受信順番情報を更新する(ステップS509)ので、印刷画像データのパケットの送受信のたびに、逐一メモリ管理テーブル304が更新されることになる。このため、データ転送の遅延の発生を抑制し、圧縮率の悪い印刷画像データに対してもオーバーランを引き起こさないようにすることができる。
When the print image
また、本発明の目的は、実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出して実行することによっても達成される。 In addition, an object of the present invention is to supply a storage medium storing software program codes for realizing the functions of the embodiments to a system or apparatus, and a computer (or CPU, MPU, etc.) of the system or apparatus as a storage medium. This can also be achieved by reading and executing the stored program code.
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。 In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the program code and the storage medium storing the program code constitute the present invention.
又、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。または、プログラムコードをネットワークを介してダウンロードしてもよい。 Examples of the storage medium for supplying the program code include a floppy (registered trademark) disk, a hard disk, a magneto-optical disk, a CD-ROM, a CD-R, a CD-RW, a DVD-ROM, a DVD-RAM, and a DVD. -RW, DVD + RW, magnetic tape, nonvolatile memory card, ROM, etc. can be used. Alternatively, the program code may be downloaded via a network.
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。 Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) running on the computer based on the instruction of the program code. A case where part or all of the actual processing is performed and the functions of the above-described embodiments are realized by the processing is also included.
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。 Further, after the program code read from the storage medium is written in a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. This includes the case where the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.
100〜102 ホストコンピュータ
200 LAN
300 ネットワークカード
301 プロトコル制御部
302 CPU
303 印刷画像データ制御部
304 メモリ管理テーブル
305 メモリコントローラ
306 メモリ
307 プリンタI/F制御部
400 印刷装置
100 to 102
300
303 Print Image
Claims (11)
前記情報処理装置からデータを受信する受信手段と、
前記受信手段により受信されたデータを複数の領域のいずれかに格納する格納手段と、
前記画像形成装置に前記格納されたデータを送信する送信手段と、
前記格納手段におけるデータの格納状況を記憶する管理テーブル手段と、
前記画像形成装置から、前記画像形成装置の状況を示す装置情報を取得する装置情報取得手段と、
前記管理テーブル手段を参照することで、前記格納手段におけるデータの格納状況に応じて、前記受信手段が受信したデータを格納する領域を決定し、領域の決定に従って前記管理テーブル手段を更新すると共に、前記管理テーブル手段と前記装置情報取得手段が取得した装置情報とを参照することで、前記格納手段におけるデータの格納状況及び前記画像形成装置の状況に応じて、前記送信手段によって送信されるデータを格納する領域を決定し、領域の決定に従って前記管理テーブル手段を更新する制御手段と
を備えることを特徴とするデータ通信制御装置。 In a data communication control device that controls data communication between an information processing device and an image forming device,
Receiving means for receiving data from the information processing apparatus;
Storage means for storing the data received by the receiving means in any of a plurality of areas;
Transmitting means for transmitting the stored data to the image forming apparatus;
Management table means for storing data storage status in the storage means;
Device information acquisition means for acquiring device information indicating the status of the image forming device from the image forming device;
By referring to the management table means, according to the storage status of the data in the storage means, determine an area for storing the data received by the receiving means, and update the management table means according to the determination of the area, By referring to the management table means and the apparatus information acquired by the apparatus information acquisition means, the data transmitted by the transmission means is determined according to the storage status of the data in the storage means and the status of the image forming apparatus. A data communication control device comprising: a control unit that determines a storage area and updates the management table unit according to the determination of the region.
前記パケットは、色情報、パケットサイズ情報及び印刷画像データを備えるパケットであり、最大のパケットサイズは予め前記情報処理装置で定められていることを特徴とする請求項1又は2記載のデータ通信制御装置。 The storage means stores the packet including the data in any of a plurality of areas,
3. The data communication control according to claim 1, wherein the packet is a packet including color information, packet size information, and print image data, and a maximum packet size is predetermined by the information processing apparatus. apparatus.
前記情報処理装置から前記データを受信したか否かを判断する受信判断ステップと、
前記受信判断ステップにおいて受信したと判断された場合、当該受信したデータの情報を保持し、且つ受信した該データを格納するメモリのメモリアドレスを発生させる受信手続きステップと、
前記受信手続きステップにおいてメモリアドレスを発生させたデータの前記メモリへの格納が終了したか否かを判断する受信終了判断ステップと、
前記受信終了判断ステップにおいて、前記受信したデータの前記メモリへの格納が終了したと判断した場合、前記受信手続きステップにおいて保持していたデータの情報と前記情報処理装置からの受信順番が最も遅いとした受信順番情報とによってメモリ管理テーブルを更新する第1メモリ管理テーブル更新ステップと、
前記メモリ管理テーブルと前記画像形成装置から取得された装置情報に応じて、前記画像形成装置に送信可能なデータがあるか否かを判断する送信判断ステップと、
前記送信判断ステップにおいて送信可能なデータがあると判断した場合、前記メモリ管理テーブルを元に、送信するデータを決定し、該データを格納している格納領域のメモリアドレスを発生させる送信手続きステップと、
前記送信手続きステップにおいて、メモリアドレスを発生させたデータの前記画像形成装置への送信が終了したか否かを判断する送信終了判断ステップと、
前記送信終了判断ステップにおいて前記データの前記画像形成装置への送信が終了したと判断した場合、前記メモリ管理テーブルにおける該データが格納されていた格納領域の情報に関して、データの受信順番が最も遅いとした空き領域のデータの受信順番情報と、色情報及びデータサイズ情報をクリアすることで更新する第2メモリ管理テーブル更新ステップとを備え、
前記データの複数から成る1つの印刷ジョブデータを全て前記画像形成装置に送信するまで前記複数のステップを繰り返すことを特徴とするデータ通信制御方法。 In a data communication control method executed by a data communication control device that controls data communication between an information processing device and an image forming device,
A reception determination step of determining whether or not the data has been received from the information processing apparatus;
A reception procedure step of holding information on the received data and generating a memory address of a memory for storing the received data when it is determined in the reception determination step;
A reception end determination step of determining whether or not storage of the data that generated the memory address in the reception procedure step is completed in the memory;
In the reception end determination step, when it is determined that the storage of the received data in the memory has ended, the data information held in the reception procedure step and the reception order from the information processing device are the latest A first memory management table update step for updating the memory management table with the received reception order information;
A transmission determination step of determining whether there is data that can be transmitted to the image forming apparatus according to the memory management table and apparatus information acquired from the image forming apparatus;
A transmission procedure step for determining data to be transmitted based on the memory management table and generating a memory address of a storage area storing the data when it is determined that there is data that can be transmitted in the transmission determination step; ,
In the transmission procedure step, a transmission end determination step for determining whether or not the transmission of the data that has generated the memory address to the image forming apparatus has ended.
When it is determined in the transmission end determination step that the transmission of the data to the image forming apparatus has been completed, the data reception order is the latest with respect to the storage area information in which the data is stored in the memory management table. And a second memory management table update step for updating by clearing the color information and the data size information.
A data communication control method characterized in that the plurality of steps are repeated until one print job data composed of a plurality of the data is transmitted to the image forming apparatus.
前記情報処理装置から前記データを受信したか否かを判断する受信判断モジュールと、
前記受信判断モジュールにおいて受信したと判断された場合、当該受信したデータの情報を保持し、且つ受信した該データを格納するメモリのメモリアドレスを発生させる受信手続きモジュールと、
前記受信手続きモジュールにおいてメモリアドレスを発生させたデータの前記メモリへの格納が終了したか否かを判断する受信終了判断モジュールと、
前記受信終了判断モジュールにおいて、前記受信したデータの前記メモリへの格納が終了したと判断した場合、前記受信手続きモジュールにおいて保持していたデータの情報と前記情報処理装置からの受信順番が最も遅いとした受信順番情報とによってメモリ管理テーブルを更新する第1メモリ管理テーブル更新モジュールと、
前記メモリ管理テーブルと前記画像形成装置から取得された装置情報に応じて、前記画像形成装置に送信可能なデータがあるか否かを判断する送信判断モジュールと、
前記送信判断モジュールにおいて送信可能なデータがあると判断した場合、前記メモリ管理テーブルを元に、送信するデータを決定し、該データを格納している格納領域のメモリアドレスを発生させる送信手続きモジュールと、
前記送信手続きモジュールにおいて、メモリアドレスを発生させたデータの前記画像形成装置への送信が終了したか否かを判断する送信終了判断モジュールと、
前記送信終了判断モジュールにおいて前記データの前記画像形成装置への送信が終了したと判断した場合、前記メモリ管理テーブルにおける該データが格納されていた格納領域の情報に関して、データの受信順番が最も遅いとした空き領域のデータの受信順番情報と、色情報及びデータサイズ情報をクリアすることで更新する第2管理テーブル更新モジュールとを備え、
前記データの複数から成る1つの印刷ジョブデータを全て前記画像形成装置に送信するまで前記複数のモジュールの処理を前記コンピュータで繰り返し実行させることを特徴とするプログラム。 In a program executed by a computer that controls data communication between an information processing apparatus and an image forming apparatus,
A reception determination module that determines whether or not the data is received from the information processing apparatus;
A reception procedure module that holds information of the received data and generates a memory address of a memory that stores the received data when it is determined that the reception is received by the reception determination module;
A reception end determination module that determines whether or not storage of the data that has generated a memory address in the reception procedure module is ended in the memory;
In the reception end determination module, when it is determined that the storage of the received data in the memory has ended, the information of the data held in the reception procedure module and the reception order from the information processing device are the latest A first memory management table update module for updating the memory management table with the received reception order information;
A transmission determination module that determines whether there is data that can be transmitted to the image forming apparatus according to the memory management table and apparatus information acquired from the image forming apparatus;
A transmission procedure module for determining data to be transmitted based on the memory management table and generating a memory address of a storage area storing the data when the transmission determination module determines that there is data that can be transmitted; ,
In the transmission procedure module, a transmission end determination module that determines whether transmission of data that has generated a memory address to the image forming apparatus has ended;
When the transmission end determination module determines that transmission of the data to the image forming apparatus has ended, the data reception order is the latest with respect to the storage area information in which the data is stored in the memory management table. And a second management table update module that updates by clearing the reception order information of the data in the empty area and clearing the color information and the data size information,
A program for repeatedly executing the processing of the plurality of modules by the computer until one print job data composed of a plurality of the data is transmitted to the image forming apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005120063A JP2006301797A (en) | 2005-04-18 | 2005-04-18 | Data communication controller, data communication control method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005120063A JP2006301797A (en) | 2005-04-18 | 2005-04-18 | Data communication controller, data communication control method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006301797A true JP2006301797A (en) | 2006-11-02 |
Family
ID=37470039
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005120063A Pending JP2006301797A (en) | 2005-04-18 | 2005-04-18 | Data communication controller, data communication control method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006301797A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013255054A (en) * | 2012-06-06 | 2013-12-19 | Fuji Xerox Co Ltd | Transmitting and receiving system and program |
-
2005
- 2005-04-18 JP JP2005120063A patent/JP2006301797A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013255054A (en) * | 2012-06-06 | 2013-12-19 | Fuji Xerox Co Ltd | Transmitting and receiving system and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6819443B1 (en) | Network printer | |
JP2004005541A (en) | Data transfer device, data transfer method, program and recording medium | |
US8836978B2 (en) | Image forming apparatus and image forming system having a first memory and a second memory | |
JP2007310770A (en) | Print control device, printing system, printing control method and program | |
US6552816B1 (en) | Printing system and printer | |
JP4420207B2 (en) | Host-based printer, host device, and print control method | |
EP1035498A2 (en) | Printer, printer control method and storage medium for recording program | |
JP2006301797A (en) | Data communication controller, data communication control method, and program | |
US7746494B2 (en) | Data processing apparatus, data processing method, printer driver, print control apparatus, print control method, and printing system | |
JP2003177895A (en) | Print server, print system, print method, print program and computer readable recording medium with print program recorded | |
JP4094443B2 (en) | Printing system, printing method, and program for causing computer to execute the method | |
JP4200884B2 (en) | Image decompression apparatus and method, and image processing system | |
JP2004284259A (en) | Image forming apparatus and its method | |
US7248578B2 (en) | Network hub with functionally integrated raster image processor and associated printing method and architecture | |
JP2009006507A (en) | Image forming apparatus | |
US7443528B2 (en) | Image forming apparatus and method of controlling same | |
JP2001243028A (en) | Medium with printing control program recorded and printing controller and printing control method | |
JP2002055790A (en) | Printing system and printing control method | |
JP2000020269A (en) | Printer system | |
JP2003110565A (en) | Communication system, transmitter, communication method, communication program, and computer readable recording medium recording the same program | |
JP4665705B2 (en) | Acquiring credit for data communication in network printers | |
JP2005108114A (en) | Image processing device, its method, and printer system | |
JP2008262471A (en) | Image output device | |
JP2005169671A (en) | Data processing apparatus, printing controlling method, storage medium with computer readable program stored, and program | |
JP2004098313A (en) | Printer having enhanced transfer efficiency of print data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD05 | Notification of revocation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7425 Effective date: 20070626 |