[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2006301797A - Data communication controller, data communication control method, and program - Google Patents

Data communication controller, data communication control method, and program Download PDF

Info

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
Application number
JP2005120063A
Other languages
Japanese (ja)
Inventor
Minoru Akazawa
穣 赤澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2005120063A priority Critical patent/JP2006301797A/en
Publication of JP2006301797A publication Critical patent/JP2006301797A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Communication Control (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a data communication controller, a data communication control method, and a program for suppressing occurrence of the delay in data transfer. <P>SOLUTION: In a data communication controller, when it is decided that the storage of a packet in a memory is completed, a memory management table is updated with color information of a packet, packet size information, and reception order information in which a reception order from a computer is decided to be the last (step S505), and when the transmission of the packet to a printer is completed, a memory management table for managing a region where the transmitted packet is stored is updated as necessary, as a management table for managing a free space whose storage order is the last, and the reception order information of the table for managing the region where the packet received prior to the last transmitted packet is stored among the tables for managing the region where the packet is stored is updated (step S509). Also, a data communication control method and program are disclosed. <P>COPYRIGHT: (C)2007,JPO&INPIT

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参照。)
特開2001−092604号公報
On the other hand, in addition to the low cost of host-based printers, the demand for business scenes such as offices is increasing as the printing speed increases. Printer usage in the office is generally connected via a LAN cable, so it is desirable to make the printer compatible with the network. Printer network printing requires a print server that combines network protocol processing and processing for receiving print data from a host computer and transferring it to the printer. (For example, refer to Patent Document 1.)
JP 2001-092604 A

ホストベースプリンタの場合、前述のように一度印刷スタートをかけたら、プリントエンジンの紙搬送速度に対して印刷画像データの転送に遅延が発生すると、正しい印刷が実行されない。従って、ホストベースプリンタにおけるネットワーク印刷の実行は、プリントサーバが極力ボトルネックとならないような構成であることが望まれる。   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 claim 1 is a data communication control device that controls data communication between an information processing device and an image forming device, and receives data from the information processing device. Means, storage means for storing data received by the receiving means in any of a plurality of areas, transmission means for transmitting the stored data to the image forming apparatus, and data storage status in the storage means The management table means for storing data, the device information acquisition means for acquiring the device information indicating the status of the image forming apparatus from the image forming apparatus, and the storage of the data in the storage means by referring to the management table means According to the situation, determining the area for storing the data received by the receiving means, and updating the management table means according to the determination of the area In addition, by referring to the management table means and the apparatus information acquired by the apparatus information acquisition means, the transmission means transmits the data according to the data storage status in the storage means and the status of the image forming apparatus. Control means for determining an area for storing data and updating the management table means in accordance with the determination of the area.

請求項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 printing apparatus 400 having host computers 100 to 102, a LAN 200, and a network card 300.

ホストコンピュータ100〜102は、LAN200などのネットワークを介してデータ通信制御装置としてのネットワークカード300を有する印刷装置400に接続される。ホストコンピュータ100は印刷を行う際にまず印刷装置400を占有する。それから、印刷画像データにレンダリング処理や圧縮処理を施し、色情報及びパケットサイズ情報を付加した印刷画像データのパケットを生成して、ネットワークカード300にパケットを次々と送信する。ネットワークカード300はパケットをバッファしながら適宜印刷装置400に転送する。1ジョブの印刷が終了するまで印刷装置400は占有される。   The host computers 100 to 102 are connected to a printing apparatus 400 having a network card 300 as a data communication control apparatus via a network such as a LAN 200. The host computer 100 first occupies the printing apparatus 400 when performing printing. Then, rendering processing and compression processing are performed on the print image data to generate print image data packets to which color information and packet size information are added, and the packets are transmitted to the network card 300 one after another. The network card 300 transfers the packet to the printing apparatus 400 as appropriate while buffering the packet. The printing apparatus 400 is occupied until printing of one job is completed.

図2は、ネットワークカード300の概略構成を示すブロック図である。   FIG. 2 is a block diagram showing a schematic configuration of the network card 300.

ネットワークカード300は、プロトコル制御部301、CPU302、印刷画像データ制御部303、メモリ管理テーブル304、メモリコントローラ305、メモリ306及びプリンタI/F制御部307を備えている。   The network card 300 includes a protocol control unit 301, a CPU 302, a print image data control unit 303, a memory management table 304, a memory controller 305, a memory 306, and a printer I / F control unit 307.

ネットワークカード300は、ホストコンピュータ100からLAN200を介して転送された印刷画像データのパケットをプロトコル制御部301で受信し、プロトコル処理を実行する。   The network card 300 receives a packet of print image data transferred from the host computer 100 via the LAN 200 by the protocol control unit 301 and executes protocol processing.

この際、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 CPU 302 performs processing such as a print control command and a network management application without being involved in the protocol processing. When the print image data control unit 303 receives the reception notification from the protocol control unit 301, the print image data control unit 303 refers to the memory management table 304 that manages the packet storage status of the memory 306, and receives if there is an empty area in the memory 306. Is allowed to generate the storage destination address. The packet of print image data permitted to be received is stored in the memory 306 via the memory controller 305. The printer I / F control unit 307 periodically acquires free information in the print image data buffer area of the printing apparatus 400 and notifies the print image data control unit 303 as necessary. The print image data control unit 303 refers to the empty information in the print image data buffer area of the printing apparatus and the memory management table 304. If there is a packet that can be transmitted, the storage destination address of the memory 306 in which the packet is stored To the printer I / F control unit 307. The printer I / F control unit 307 reads the packet stored at the address received via the memory controller 305 and transfers it to the printing apparatus 400. The print image data control unit 303 always updates the information in the memory management table 304 when storage of the print image data packet in the memory 306 is completed or when reading from the memory 306 is completed. The storage status of packets in the memory 306 is held.

図3は、印刷装置400の概略構成を示すブロック図である。   FIG. 3 is a block diagram illustrating a schematic configuration of the printing apparatus 400.

印刷装置400は、NICI/F401、CPU402、操作パネル403、メモリコントローラ404、メモリ405、データ伸張部406、エンジンI/F制御部407及びプリントエンジン408を備えている。   The printing apparatus 400 includes a NIC I / F 401, a CPU 402, an operation panel 403, a memory controller 404, a memory 405, a data expansion unit 406, an engine I / F control unit 407, and a print engine 408.

NICI/F401はネットワークカード300から転送されたパケットを受信する。CPU402は受信したパケットを解析し、ヘッダーを剥いで圧縮画像データのみをメモリコントローラ404に渡す。また、操作パネル部403の制御も行う。メモリコントローラ404は圧縮画像データをメモリ405にバッファし、順次データ伸張部406に渡していく。データ伸張部406はホストコンピュータ100から受信した圧縮画像データの伸張を行う。エンジンI/F制御部407は、プリントエンジン408との制御信号のやりとりや印刷画像データの転送を行う。   The NIC I / F 401 receives the packet transferred from the network card 300. The CPU 402 analyzes the received packet, strips the header, and passes only the compressed image data to the memory controller 404. The operation panel unit 403 is also controlled. The memory controller 404 buffers the compressed image data in the memory 405 and sequentially passes it to the data decompression unit 406. A data decompression unit 406 decompresses compressed image data received from the host computer 100. The engine I / F control unit 407 exchanges control signals with the print engine 408 and transfers print image data.

図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 host computer 100 and then adding a header including color information and packet size information to the print image data subjected to these processes. The The maximum packet size is preset and never exceeds that value. Each packet is transmitted from the host computer 100 to the network card 300 in the order in which the printout is performed for each color. Therefore, the network card 300 is sent to the printing apparatus 400 in the order received from the host computer 100 for each color. Need to transfer.

図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 memory 306. In particular, the initial state of the memory management table 304 and the memory 306 when the printing apparatus 400 is occupied by the host computer 100 is shown. (Hereinafter, this initial state is referred to as “initial state”). That is, before the transfer of the print image data packet starts from the host computer 100. FIG. 5B is a diagram showing a configuration of the packet reception area management register 3031, and FIG. 5C is a diagram showing a configuration of the free area management register 3032.

ここでは印刷画像データのパケットの最大値が仮に64Kバイトであるとし、メモリ306はそのパケットが最大96個格納できるサイズをもつとする。すなわちパケットのバッファ領域は6Mバイトである。   Here, it is assumed that the maximum value of a packet of print image data is 64 Kbytes, and the memory 306 has a size capable of storing a maximum of 96 packets. That is, the buffer area of the packet is 6M bytes.

メモリ管理テーブル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 memory 306. As shown in the figure, the leading addresses 0x0000_0000 to 0x005F_0000 of each of the 96 packet storage areas of the memory 306 correspond to the address information 1 to 96 of the memory management table 304, and each table (row) of the memory management table 304 By referring to (data), the information of the storage area of the memory 306 indicated by the address information of the table can be known. This address information is written by the print image data control unit 303 when the network card 300 is activated and is not changed.

それぞれのテーブルは、アドレス情報、色情報、パケットサイズ情報及び受信順番情報を備えている。これらの項目は、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 memory 306.

色情報及びパケットサイズ情報は、そのテーブルに対応するメモリ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 memory 306 corresponding to the table. As shown in FIG. 5, when no packet is stored, the color information and the packet size information are set to “0”.

受信順番情報には、そのテーブルのアドレス情報が示すメモリ306の格納領域にパケットが格納されている場合に、そのパケットの次にホストコンピュータ100から受信したパケットが格納されている領域を管理しているテーブルのアドレス情報が書き込まれている一方、パケットが格納されていない空き領域の場合に、その空き領域の次にホストコンピュータ100から受信したパケットを格納する予定の空き領域を管理しているテーブルのアドレス情報が書き込まれる。   In the reception order information, when a packet is stored in the storage area of the memory 306 indicated by the address information of the table, the area in which the packet received from the host computer 100 is stored next to the packet is managed. Table in which the address information of the existing table is written, and in the case of a free area in which no packet is stored, the free area where the packet received from the host computer 100 is to be stored next to the free area is managed Address information is written.

また、受信順番情報が「0」の場合は、そのテーブルに対応したメモリ306の格納領域がパケットを格納していれば、パケットを格納している領域の内で現時点で最もパケットを受信したのが遅い領域であることを示し、パケットを格納していない空き領域であれば、空き領域の内で現時点で最もパケットを受信するのが遅い領域であることを示す。   Also, when the reception order information is “0”, if the packet is stored in the storage area of the memory 306 corresponding to the table, the packet has been received most at the present time in the area storing the packet. Indicates that it is a slow region, and if it is a free region that does not store packets, it indicates that it is the slowest region in the free region that currently receives packets.

さらに、パケット受信済みの領域を管理しているテーブルの内、パケット受信順番が最も早い領域と最も遅い領域を管理しているテーブルをパケット受信領域管理レジスタ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 area management register 3031 and the free areas are managed. The free area management register 3032 always holds a table that manages the area where the packet reception order is the earliest and the area where the packet is received most slowly. The packet reception area management register 3031 and the free area management register 3032 are included in the print image data control unit 303.

図5(B)におけるパケット受信領域管理レジスタ3031の上段は受信順番が最も早いパケット格納領域を管理しているテーブルであり、下段は最も遅いパケット格納領域を管理しているテーブルである。また、空き領域管理レジスタ3032の上段は受信順番が最も早い空き領域を管理しているテーブルであり、下段は最も遅い空き領域を管理しているテーブルである。   The upper part of the packet reception area management register 3031 in FIG. 5B is a table that manages the packet storage area with the earliest reception order, and the lower part is a table that manages the latest packet storage area. Further, the upper part of the free area management register 3032 is a table that manages the empty area with the earliest reception order, and the lower part is the table that manages the latest empty area.

これらのレジスタでパケット格納領域と空き領域のそれぞれの順番の最初と最後を管理しているため、メモリ管理テーブル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 memory 306 are stored. Order management can be performed.

図5は初期状態を示すため、メモリ306の格納領域は当然全て空き領域である。   Since FIG. 5 shows an initial state, the storage area of the memory 306 is naturally an empty area.

受信順番情報は、印刷画像データ制御部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 data control unit 303 as shown in FIG. However, “0” is written in the reception order information of the table whose address information is “96”, and in the initial state, the table managing the area where the packet reception order is the slowest. In the packet reception area management register 3031, since an area for receiving a packet does not exist in the memory 306, “0” is written in all items at the time of activation. Further, in the upper part of the free area management register 3032, a table that manages the free area with the earliest reception order, that is, a table whose address information is “1”, and in the lower part of the free area management register 3032, the reception order is A table managing the latest free space, that is, a table with address information “96” is written at the time of activation.

以上より、起動時においては、メモリ管理テーブル304、パケット受信領域管理レジスタ3031、空き領域管理レジスタ3032、各々を図5のように設定することで、ホストコンピュータ100から受信した印刷画像データパケットを、アドレス情報が「1」→「2」→…… →「96」の順にメモリ306に格納させるようにする。   As described above, at startup, the memory management table 304, the packet reception area management register 3031, and the free area management register 3032 are set as shown in FIG. The address information is stored in the memory 306 in the order of “1” → “2” →... → “96”.

また、以上の説明では、メモリ管理テーブル304を、パケット受信領域管理レジスタ3031及び空き領域管理レジスタ3032と共に活用することで、メモリ306のパケット格納領域及び空き領域の順番管理を行うことを述べた。以下、パケットの送受信に伴うメモリ管理テーブル304の具体的な更新方法を述べるが、その前にここで順番管理を行う理由を説明する。   In the above description, the memory management table 304 is used together with the packet reception area management register 3031 and the free area management register 3032 to manage the order of packet storage areas and free areas in the memory 306. Hereinafter, a specific method for updating the memory management table 304 accompanying packet transmission / reception will be described. Before that, the reason for performing the order management will be described.

図1のネットワーク印刷システムにおいて、印刷装置400は4Dカラーエンジンを備え、各色ごとに処理するチャネルを設け、印刷画像データのパケットの並列処理を行う。元々ホストコンピュータ100で圧縮されているパケットを印刷装置400で伸張するため、圧縮率の差から色ごとにデータ処理量が異なってくるので、仮にネットワークカード300がFIFO構造であるとしたら、次に印刷装置400に転送するパケットに対応する色が印刷装置400ではチャネルのバッファが飽和状態の色である場合、そこでデータ転送は一時停止してしまい、システムのボトルネックとなる。   In the network printing system of FIG. 1, the printing apparatus 400 includes a 4D color engine, provides a channel for processing each color, and performs parallel processing of packets of print image data. Since the packet originally compressed by the host computer 100 is expanded by the printing apparatus 400, the data processing amount differs for each color due to the difference in compression rate. If the network card 300 has a FIFO structure, then If the color corresponding to the packet to be transferred to the printing apparatus 400 is a color in which the channel buffer is saturated in the printing apparatus 400, the data transfer temporarily stops there, which becomes a system bottleneck.

従って、システムの転送パフォーマンスを向上させるために、ネットワークカード300から印刷装置400へのパケット送信を、送信可能な色から順次行えるようにする。印刷装置400は、色ごとにホストコンピュータ100からの転送順番が守られていれば問題はないため、ネットワークカード300は色ごとのFIFO構造であることがシステムの状況を考慮した時、パフォーマンスを維持するためには最も好ましい。   Therefore, in order to improve the transfer performance of the system, packet transmission from the network card 300 to the printing apparatus 400 can be performed sequentially from colors that can be transmitted. Since the printing apparatus 400 has no problem as long as the transfer order from the host computer 100 is observed for each color, the network card 300 has a FIFO structure for each color and maintains performance when considering the system status. Most preferred for doing so.

順番管理はそのためのものである。例えば、ある時点でネットワークカード300に格納されているパケットの内、印刷装置400にシアン以外の色が送信できない状況においても、パケットの受信順番が管理されていることで、即座に最も受信順番が早いシアンのパケットが格納されている領域を検索することが可能となる。   Order management is for that purpose. For example, among the packets stored in the network card 300 at a certain point in time, even when a color other than cyan cannot be transmitted to the printing apparatus 400, the packet reception order is managed, so that It is possible to search for an area where an early cyan packet is stored.

順番管理の概要であるが、パケットの受信に関しては、管理している空き領域の順番通りにパケットを格納していく。しかし、前述のようにパケットの送信に関しては、管理しているパケット格納領域のパケット受信順番通りに行われるわけではない。基本的には順番通りに行われる様に制御されるが、印刷装置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 printing apparatus 400, there is a possibility of transmission in a random order. Even in such a case, the memory management table 304 is updated so that a firm order management can be performed in order to realize a FIFO structure for each color.

更新の規則としては、パケットの受信の場合は、空き領域の内で順番が最も早い領域にパケットを格納し、その後、パケット格納領域の内で最も遅い順番として順番管理し、パケットの送信の場合は、送信されたパケットを格納していた領域を、送信前までパケット格納領域の順番管理下であったのに対して、空き領域の内で最も遅い順番として順番管理する。   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 memory 306 after packet transmission / reception is performed to some extent. FIG. 6B is a diagram showing a configuration of the packet reception area management register 3031, and FIG. 6C is a diagram showing a configuration of the free area management register 3032.

メモリ306におけるパケットの格納領域内で、現時点でパケットを受信した順番は、メモリ管理テーブル304のアドレス情報が示す「1」→「2」→「3」→「4」→「6」→「7」→「8」→…→「95」の順番であり、メモリ306における空き領域内で、現時点でパケットを受信する順番は、アドレス情報が示す「96」→「5」の順番で、96個の領域の内、2個の領域のみであることがわかる。   Within the packet storage area in the memory 306, the order in which packets are received at this time is “1” → “2” → “3” → “4” → “6” → “7” indicated by the address information in the memory management table 304. ”→“ 8 ”→... →“ 95 ”, and within the empty area in the memory 306, the order of receiving packets at this time is 96 in the order“ 96 ”→“ 5 ”indicated by the address information. It can be seen that there are only two of the regions.

以下に、図2、図3、図5〜9を参照しながら、パケットを送受信する際の印刷画像データ制御部303の制御及びメモリ管理テーブル304の更新方法を記述する。   Hereinafter, the control of the print image data control unit 303 and the update method of the memory management table 304 when transmitting / receiving packets will be described with reference to FIGS. 2, 3, and 5 to 9.

〔パケットを受信する場合〕
図2において、ホストコンピュータ100からネットワークカード300のプロトコル制御部301が印刷画像データのパケットを受信し、印刷画像データ制御部303に対して受信通知を出す。
[When receiving a packet]
In FIG. 2, the protocol control unit 301 of the network card 300 receives a print image data packet from the host computer 100 and issues a reception notification to the print image data control unit 303.

印刷画像データ制御部303は、メモリ306に空き領域が存在することを確認したら、パケットのヘッダー、すなわち、パケットの色情報及びパケットサイズ情報を要求し、これを受け取った後は不図示のレジスタに保持して、空き領域管理レジスタ3032の上段のテーブルに対応するメモリ306の領域(すなわち、メモリ306の空き領域の内で最もパケット受信順番が早い領域。図5においてはメモリ管理テーブル304のテーブル「1」に対応する領域。)のアドレスをプロトコル制御部301に発生させる。受信したパケットはプロトコル制御部301からメモリコントローラ305を介して、メモリ306内の指定したアドレスに格納される。   When the print image data control unit 303 confirms that an empty area exists in the memory 306, the print image data control unit 303 requests a packet header, that is, packet color information and packet size information. And the area of the memory 306 corresponding to the upper table of the empty area management register 3032 (that is, the area with the earliest packet reception order among the empty areas of the memory 306. In FIG. 1) is generated in the protocol control unit 301. The received packet is stored in the designated address in the memory 306 from the protocol control unit 301 via the memory controller 305.

メモリ306に該受信パケットが格納されたら、プロトコル制御部301から印刷画像データ制御部303へ、受信完了の通知が届く。印刷画像データ制御部303はこの通知を認識したら、メモリ管理テーブル304の更新を行う。   When the received packet is stored in the memory 306, a notification of reception completion is sent from the protocol control unit 301 to the print image data control unit 303. When the print image data control unit 303 recognizes this notification, it updates the memory management table 304.

この更新は、該受信パケットを格納した領域に関して、格納直前までは空き領域の内で最もパケット受信順番が早い領域として管理していたものを、パケット受信済みの領域の内で最もパケット受信順番が遅い領域として管理することである。   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 data control unit 303 receives the packet reception completion notification, the print image data control unit 303 first looks at a table that manages an area of the memory 306 that has the earliest packet reception order. That is, the reception order information, color information, and packet size information of the table whose address information of the memory management table 304 corresponding to the upper table of the free space management register 3032 in FIG. 6 is “96” are updated.

図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 memory 306, “0” is written in the receiving order information of the table. The retained “K” and “64K” information is written in the color information and the packet size information, respectively.

次に、パケットを受信する前に、メモリ306のパケット受信済み領域の内で最もパケット受信順番が遅かった領域を管理しているテーブル、すなわち、パケット受信領域管理レジスタ3031の下段が保持するテーブルに対応するメモリ管理テーブル304のアドレス情報「95」の「受信順番情報」を更新する必要がある。ここは、パケット受信前は「0」であったのに対し、テーブル「96」がパケットを受信したため、パケット受信順番をつなぐために、「96」が書き込まれる。   Next, before receiving a packet, a table that manages an area in the memory 306 where the packet reception order is the slowest in the packet reception area, that is, a table held in the lower stage of the packet reception area management register 3031 is stored. It is necessary to update the “reception order information” of the address information “95” in the corresponding memory management table 304. Here, “0” was obtained before the packet was received, but since the table “96” received the packet, “96” is written to connect the packet reception order.

最後に、パケット受信領域管理レジスタ3031及び空き領域管理レジスタ3032を最新の情報に更新する。   Finally, the packet reception area management register 3031 and the free area management register 3032 are updated to the latest information.

以上の手順を踏むことで、パケットを受信した際のメモリ管理テーブル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 data decompression unit 406 and the engine I / F control unit 407 in the printing apparatus 400 of FIG. 3 are configured for each color of C, M, Y, and K, the data decompression unit 406 if the compression rate of each data is different. The amount of processing data varies depending on each color. For this reason, the degree of data reduction in the buffer (that is, the memory 405) provided in the preceding stage of the data decompression unit 406 differs for each color. Therefore, the printer I / F control unit 307 in the network card 300 in FIG. 2 periodically acquires information on the availability of the buffers for each color (printing device information) from the printing device 400, and the print image data control unit 303 acquires the information. Based on the printing apparatus information and the memory management table 304, the packet to be transmitted is determined.

送信が決定されるパケットの条件は、印刷装置400のバッファに空きのある色であり、且つ、ホストコンピュータ100からの受信がその時点で最も早いことである。従って、ネットワークカード300から印刷装置400への印刷画像データの転送は、色ごとにFIFO構造が守られる形となり、印刷装置400の各色のバッファの空き状況に応じて、送信可能な色から次々と行われることになる。   The condition of the packet determined to be transmitted is that the buffer of the printing apparatus 400 has a vacant color, and the reception from the host computer 100 is the earliest at that time. Accordingly, the transfer of the print image data from the network card 300 to the printing apparatus 400 is in a form in which the FIFO structure is protected for each color, and from the colors that can be transmitted one after another according to the availability of the buffer of each color of the printing apparatus 400. Will be done.

図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 memory 306. In the state of the memory management table 304 shown in FIG. 6, a printing apparatus showing the number of empty storage areas of buffers for storing packets of each color After sending a packet when the information indicates that there are 8 areas for C (cyan), 6 areas for M (magenta), 2 areas for Y (yellow), and 3 areas for K (black) The update status of the memory management table 304 is shown. FIG. 8B is a diagram showing the configuration of the packet reception area management register 3031, and FIG. 8C is a diagram showing the configuration of the free area management register 3032.

図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 host computer 100 is the table “1” held in the upper stage of the packet reception area management register 3031 in FIG. 6. Packet to be transmitted is determined.

送信パケットを決定した後、印刷画像データ制御部303はプリンタI/F制御部307に対して該パケットが格納されているメモリ306のアドレスを発生させる。プリンタI/F制御部307はそのアドレスに基づき、メモリコントローラ305を介して印刷装置400にパケットを送信する。   After determining the transmission packet, the print image data control unit 303 causes the printer I / F control unit 307 to generate an address of the memory 306 in which the packet is stored. Based on the address, the printer I / F control unit 307 transmits a packet to the printing apparatus 400 via the memory controller 305.

印刷装置400へのパケット転送が完了したら、プリンタI/F制御部307から印刷画像データ制御部303に対して送信完了の通知が届く。この通知を受けて、印刷画像データ制御部303はメモリ管理テーブル304の更新を行う。   When the packet transfer to the printing apparatus 400 is completed, a notification of transmission completion is sent from the printer I / F control unit 307 to the print image data control unit 303. Upon receiving this notification, the print image data control unit 303 updates the memory management table 304.

この更新は、送信したパケットを格納していたメモリ306内の領域を、送信前まではパケット格納領域として管理していたのに対し、空き領域の内で最もパケットを受信する順番が遅い領域として管理することである。   In this update, the area in the memory 306 in which the transmitted packet was stored was managed as a packet storage area until before transmission, but the area in which the order of receiving packets was the slowest in the free area was Is to manage.

具体的には、図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 area management register 3031 and the free area management register 3032 are updated to the latest information.

図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 printing apparatus 400 side, but FIG. 9 shows a case where the color packets that can be transmitted are limited. An update case of the memory management table 304 will be described.

図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 memory 306. In FIG. 6, the printing apparatus information is 0 area for C (cyan), 0 area for M (magenta), Y The update status of the memory management table 304 in the case of indicating three areas for (yellow) and zero area for K (black) is shown. FIG. 9B is a diagram showing a configuration of the packet reception area management register 3031, and FIG. 9C is a diagram showing a configuration of the free area management register 3032.

まず、送信パケットの決定であるが、印刷装置情報より送信可能な色パケットが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 host computer 100 is managed. Search the table that is. As a method, first, a table managing the area storing Y in order is searched from the table held in the upper stage of the packet reception area management register 3031. By tracing the reception order information in the memory management table 304, it can be seen that Y is stored for the first time in the table “4”, so the packet stored in the area managed by this table is transmitted packet. And the printer I / F control unit 307 generates an address.

印刷装置400へのパケット転送が終了したら、メモリ管理テーブル304を図9の網掛けの部分のように更新する。この更新は、テーブル「4」が管理する領域を、パケット格納領域としての順番管理から、空き領域の内で最もパケットの受信順番が遅い領域としての順番管理に変更すると同時に、テーブル「4」が管理する領域がパケット格納領域の順番の途中から抜けるため、図6のパケット送信前に、メモリ306におけるパケット格納領域の内、パケットの受信順番がテーブル「4」が管理している領域より1つ前のものと1つ後のもの、すなわち、テーブル「3」とテーブル「6」の順番をつなげる管理をすることである。   When the packet transfer to the printing apparatus 400 is completed, the memory management table 304 is updated as indicated by the shaded portion in FIG. In this update, the area managed by the table “4” is changed from the order management as the packet storage area to the order management as the area where the packet reception order is the slowest among the free areas, and at the same time, the table “4” is updated. Since the area to be managed is left in the middle of the order of the packet storage areas, before the packet transmission in FIG. 6, the packet reception order in the memory 306 is one packet reception order from the area managed by the table “4”. The management is to connect the order of the previous one and the next one, that is, the table “3” and the table “6”.

具体的にはまず、パケットを送信する前に、パケットの受信順番が、テーブル「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 area management register 3031 and the free area management register 3032 are updated to the latest information.

以上の手順を踏むことで、パケットを送信した際のメモリ管理テーブル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 data control unit 303.

印刷ジョブが印刷装置400に投げられたら、メモリ管理テーブル304の初期化を行う(ステップS501)。   When the print job is thrown to the printing apparatus 400, the memory management table 304 is initialized (step S501).

プロトコル制御手段301がパケットを受信したか否か、又は印刷画像データのパケットの格納領域にパケットが格納可能であるか否かの判断を行う(ステップS502)。   It is determined whether or not the protocol control unit 301 has received the packet or whether or not the packet can be stored in the storage area for the print image data packet (step S502).

ステップ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 protocol control unit 301 stores the packet at a specified memory address in the memory 306 via the memory controller 305.

ステップ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 computer 100 is the latest. The management table 304 is updated (step S505).

印刷装置400のデータバッファの空き領域情報を参照して印刷装置400に送信可能な領域があるか否か、又はメモリ管理テーブル304を参照してメモリ306に格納されている印刷画像データのパケットが存在するか否かの判断を行う(ステップS506)。   Whether or not there is an area that can be transmitted to the printing apparatus 400 by referring to the free area information of the data buffer of the printing apparatus 400, or a packet of print image data stored in the memory 306 by referring to the memory management table 304 It is determined whether or not it exists (step S506).

ステップ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 printing apparatus 400 and a packet exists in the memory 306, the memory management table 304 is referred to and the most received color is received. A packet with an earlier order is set as a packet to be transmitted, and a memory address is generated in the printer I / F control unit 307 based on address information in a table managing an area in which the packet is stored (step 507).

次に、ステップ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 memory 306, and in step S507, a memory address in which the packet to be transmitted is stored is generated. If YES in step S508, it is determined whether transmission of the packet to the printing apparatus 400 has been completed (step S508).

パケットの印刷装置400への送信が完了した場合には、メモリ管理テーブル304において、送信したパケットが格納されていた領域を管理しているテーブルを、空き領域で最も格納順番の遅い管理テーブルとして必要な更新を行う(例えば、色情報及びパケットサイズ情報のクリア)とともに、パケットを格納している領域を管理しているテーブルの内、送信したパケットの1つ前に受信したパケットが格納されている領域を管理しているテーブルの受信順番情報を更新する(ステップS509)。   When transmission of the packet to the printing apparatus 400 is completed, a table that manages the area in which the transmitted packet is stored in the memory management table 304 is required as the management table having the slowest storage order in the free area. (For example, clearing color information and packet size information), and the received packet is stored immediately before the transmitted packet in the table managing the area storing the packet. The reception order information of the table managing the area is updated (step S509).

最後に、受信した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 printing apparatus 400, the present process is terminated, but there are still packets in the memory 306, or there are no packets in the memory 306, but the print job is not yet terminated. Returns to step S502.

以上詳細に説明したように、本実施の形態によれば、印刷画像データ制御部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 data control unit 303 refers to the memory management table 304 to store the print image data packet stored in the memory 306. Accordingly, the protocol control unit 301 determines to store the received print image data packet in the memory 306, and the protocol control unit 301 finishes storing the received print image data packet in the memory 306 via the memory controller 305. The memory management table 304 is updated, and the memory management table 304 and the printer I / F control unit 307 refer to the information on the availability of the buffers of the respective colors, which are stored in the memory 306. Depending on the storage status of the print image data packet and the status of the printing apparatus 400, the printer I The packet of the print image data transmitted by the F control unit 307 is determined, and the printer I / F control unit 307 transmits the print image data packet read from the memory 306 via the memory controller 305 to the printing apparatus 400. Since the memory management table 304 is updated after confirming the completion, the memory management table 304 is updated one by one according to the storage status of the packet in the memory 306 and the status of the printing apparatus 400. For this reason, it is possible to suppress the occurrence of a data transfer delay and prevent overrun even for print image data having a low compression rate.

また、印刷画像データ制御部303は、印刷画像データのパケットを受信し、当該パケットのメモリ306への格納が完了したと判断した場合、パケットの色情報及びパケットサイズ情報とコンピュータ100からの受信順番が最も遅いとした受信順番情報とによってメモリ管理テーブル304を更新する(ステップS505)と共に、パケットの印刷装置400への送信が完了した場合には、メモリ管理テーブル304において、送信したパケットが格納されていた領域を管理しているテーブルを、空き領域で最も格納順番の遅い管理テーブルとして必要な更新を行う(例えば、色情報及びパケットサイズ情報のクリア)とともに、パケットを格納している領域を管理しているテーブルの内、送信したパケットの1つ前に受信したパケットが格納されている領域を管理しているテーブルの受信順番情報を更新する(ステップS509)ので、印刷画像データのパケットの送受信のたびに、逐一メモリ管理テーブル304が更新されることになる。このため、データ転送の遅延の発生を抑制し、圧縮率の悪い印刷画像データに対してもオーバーランを引き起こさないようにすることができる。   When the print image data control unit 303 receives the print image data packet and determines that the packet has been stored in the memory 306, the print image data control unit 303 receives the packet color information and the packet size information and the reception order from the computer 100. The memory management table 304 is updated with the reception order information that is the latest (step S505), and when the transmission of the packet to the printing apparatus 400 is completed, the transmitted packet is stored in the memory management table 304. Update the necessary table as the management table with the slowest storage order in the free area (for example, clear color information and packet size information), and manage the area storing the packet. Packet received in the table before the transmitted packet Update received order information table which manages the area stored so (step S509), for each of transmission and reception of a packet of the print image data, a memory management table 304 will be updated one by one. For this reason, it is possible to suppress the occurrence of a data transfer delay and prevent overrun even for print image data having a low compression rate.

また、本発明の目的は、実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(または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.

本発明の実施の形態に係るデータ通信制御装置が適用されたネットワーク印刷システムの構成を示すブロック図である。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. ネットワークカード300の概略構成を示すブロック図である。2 is a block diagram showing a schematic configuration of a network card 300. FIG. 印刷装置400の概略構成を示すブロック図である。FIG. 2 is a block diagram illustrating a schematic configuration of a printing apparatus 400. 印刷画像データのパケットの構成を示す図である。It is a figure which shows the structure of the packet of print image data. (A)はメモリ管理テーブル304及びメモリ306のデータ構成を示す概念図であり、特に印刷装置400がホストコンピュータ100によって占有された時のメモリ管理テーブル304及びメモリ306の最初の状態を指す。(B)はパケット受信領域管理レジスタ3031の構成を示す図であり、(C)は空き領域管理レジスタ3032の構成を示す図である。(A) is a conceptual diagram showing the data configuration of the memory management table 304 and the memory 306, and particularly indicates the initial state of the memory management table 304 and the memory 306 when the printing apparatus 400 is occupied by the host computer 100. (B) is a diagram showing the configuration of the packet reception area management register 3031, and (C) is a diagram showing the configuration of the free area management register 3032. (A)はパケットの送受信がある程度行われた後のメモリ管理テーブル304及びメモリ306のデータ構成を示す概念図である。(B)はパケット受信領域管理レジスタ3031の構成を示す図であり、(C)は空き領域管理レジスタ3032の構成を示す図である。(A) is a conceptual diagram showing a data configuration of the memory management table 304 and the memory 306 after packet transmission / reception is performed to some extent. (B) is a diagram showing the configuration of the packet reception area management register 3031, and (C) is a diagram showing the configuration of the free area management register 3032. (A)はメモリ管理テーブル304及びメモリ306のデータ構成を示す概念図であり、図6の状態からパケット受信により更新された状態を示す。(B)はパケット受信領域管理レジスタ3031の構成を示す図であり、(C)は空き領域管理レジスタ3032の構成を示す図である。(A) is a conceptual diagram showing a data configuration of the memory management table 304 and the memory 306, and shows a state updated by packet reception from the state of FIG. (B) is a diagram showing the configuration of the packet reception area management register 3031, and (C) is a diagram showing the configuration of the free area management register 3032. (A)は、メモリ管理テーブル304及びメモリ306のデータ構成を示す概念図であり、図6に示すメモリ管理テーブル304の状態において、各色のパケットを格納するバッファの格納領域の空き数を示す印刷装置情報が、C(シアン)に対し8領域、M(マジェンダ)に対し6領域、Y(イエロー)に対し2領域、K(ブラック)に対し3領域あることを示す場合に、パケットを送信した後のメモリ管理テーブル304の更新状況を示している。(B)はパケット受信領域管理レジスタ3031の構成を示す図であり、(C)は空き領域管理レジスタ3032の構成を示す図である。(A) is a conceptual diagram showing the data configuration of the memory management table 304 and the memory 306. In the state of the memory management table 304 shown in FIG. When the device information indicates that there are 8 areas for C (cyan), 6 areas for M (magenta), 2 areas for Y (yellow), and 3 areas for K (black) The update status of the subsequent memory management table 304 is shown. (B) is a diagram showing the configuration of the packet reception area management register 3031, and (C) is a diagram showing the configuration of the free area management register 3032. (A)はメモリ管理テーブル304及びメモリ306のデータ構成を示す概念図であり、図6において印刷装置情報がC(シアン)に対し0領域、M(マジェンダ)に対し0領域、Y(イエロー)に対し3領域、K(ブラック)に対し0領域であることを示す場合のメモリ管理テーブル304の更新状況を示している。(B)はパケット受信領域管理レジスタ3031の構成を示す図であり、(C)は空き領域管理レジスタ3032の構成を示す図である。(A) is a conceptual diagram showing the data structure of the memory management table 304 and the memory 306. In FIG. 6, the printing apparatus information is 0 area for C (cyan), 0 area for M (magenta), and Y (yellow). The update status of the memory management table 304 in the case of 3 areas for K and 0 area for K (black) is shown. (B) is a diagram showing the configuration of the packet reception area management register 3031, and (C) is a diagram showing the configuration of the free area management register 3032. 印刷画像データ制御部303で実行されるフローチャートである。6 is a flowchart executed by the print image data control unit 303.

符号の説明Explanation of symbols

100〜102 ホストコンピュータ
200 LAN
300 ネットワークカード
301 プロトコル制御部
302 CPU
303 印刷画像データ制御部
304 メモリ管理テーブル
305 メモリコントローラ
306 メモリ
307 プリンタI/F制御部
400 印刷装置
100 to 102 Host computer 200 LAN
300 Network Card 301 Protocol Control Unit 302 CPU
303 Print Image Data Control Unit 304 Memory Management Table 305 Memory Controller 306 Memory 307 Printer I / F Control Unit 400 Printing Device

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記載のデータ通信制御装置。   The data communication control device according to claim 1, wherein the data is print image data. 前記格納手段は前記データを含むパケットを複数の領域のいずれかに格納し、
前記パケットは、色情報、パケットサイズ情報及び印刷画像データを備えるパケットであり、最大のパケットサイズは予め前記情報処理装置で定められていることを特徴とする請求項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乃至3のいずれか1項記載のデータ通信制御装置。   The image forming apparatus includes a buffer configured by dividing the storage area for each color such as cyan, magenta, yellow, black, and other data, and the apparatus information acquired by the apparatus information acquisition unit is respectively 4. The data communication control device according to claim 1, wherein the data communication control device includes empty information in the buffer area. 5. 前記管理テーブル手段は、データが格納された領域の情報、及びデータが格納されていない領域の情報を管理しており、前記データが格納された領域の情報として、該データの格納先の先頭アドレス情報、該データの情報処理装置からの受信順番情報、色情報及びデータサイズ情報を含み、さらに、前記データが格納されていない領域の情報として、空き領域の先頭アドレス情報、該空き領域の受信順番情報を含むことを特徴とする請求項1乃至4のいずれか1項記載のデータ通信制御装置。   The management table means manages information on an area in which data is stored and information on an area in which no data is stored. As information on an area in which the data is stored, a start address of a storage destination of the data Information, reception order information of the data from the information processing apparatus, color information, and data size information, and further, as information of the area in which the data is not stored, start address information of the free area, reception order of the free area 5. The data communication control apparatus according to claim 1, further comprising information. 前記制御手段は、前記受信手段が前記データを受信した際、前記管理テーブル手段を参照して、前記データが格納されていない領域の情報が存在する場合、空き領域の受信順番情報を元に、最もパケットを受信する順番の早い空き領域の先頭アドレス情報を前記受信手段に渡すことで、該データを格納する領域を決定することを特徴とする請求項5記載のデータ通信制御装置。   The control means refers to the management table means when the receiving means receives the data, and if there is information on an area where the data is not stored, based on the reception order information of the empty area, 6. The data communication control apparatus according to claim 5, wherein an area for storing the data is determined by passing the top address information of the empty area with the earliest packet reception order to the receiving means. 前記制御手段は、前記受信手段が前記データを受信した際、該データの色情報及びデータサイズ情報を保持し、前記格納手段に該データが格納されたことを確認した後、前記管理テーブル手段における該データが格納された領域の情報を、データが格納されていない領域の情報からデータが格納された領域の情報として更新し、その際、前記情報処理装置からの受信順番情報は最も遅い順番であるとし、色情報及びデータサイズ情報は保持していた情報を書き込むことを特徴とする請求項5記載のデータ通信制御装置。   When the receiving means receives the data, the control means holds the color information and data size information of the data, and after confirming that the data is stored in the storage means, in the management table means The information of the area where the data is stored is updated as the information of the area where the data is stored from the information of the area where the data is not stored. At this time, the reception order information from the information processing device is the latest order. 6. The data communication control apparatus according to claim 5, wherein the stored information is written in the color information and the data size information. 前記制御手段は、前記管理テーブル手段を参照して、前記データが格納された領域の情報が存在する場合、前記情報処理装置からの受信順番情報と前記装置情報取得手段が取得する装置情報とを元に、最も受信順番が早く且つ前記画像形成装置に送信可能な色情報をもつデータを決定し、該データの格納先の先頭アドレス情報を前記送信手段に渡すことで、前記画像形成装置に送信するデータを格納する領域を決定する請求項5記載のデータ通信制御装置。   The control means refers to the management table means, and if there is information on the area where the data is stored, the control means obtains the reception order information from the information processing apparatus and the apparatus information acquired by the apparatus information acquisition means. Originally, the data having the earliest reception order and having color information that can be transmitted to the image forming apparatus is determined, and the head address information of the storage destination of the data is transmitted to the transmitting unit, and transmitted to the image forming apparatus. 6. The data communication control device according to claim 5, wherein an area for storing data to be determined is determined. 前記制御手段は、前記送信手段が前記データを送信した際、前記管理テーブル手段における該データが格納されていた領域の情報を、当該データが格納された領域の情報から当該データが格納されていない領域の情報として更新し、その際、空き領域の受信順番情報は最も遅い順番であるとし、色情報及びデータサイズ情報は消去することを特徴とする請求項5記載のデータ通信制御装置。   When the transmission means transmits the data, the control means stores information on the area where the data is stored in the management table means from the information on the area where the data is stored. 6. The data communication control apparatus according to claim 5, wherein the information is updated as area information, and the reception order information of the empty area is assumed to be the latest order, and the color information and the data size information are deleted. 情報処理装置と画像形成装置との間でデータの通信を制御するデータ通信制御装置で実行されるデータ通信制御方法において、
前記情報処理装置から前記データを受信したか否かを判断する受信判断ステップと、
前記受信判断ステップにおいて受信したと判断された場合、当該受信したデータの情報を保持し、且つ受信した該データを格納するメモリのメモリアドレスを発生させる受信手続きステップと、
前記受信手続きステップにおいてメモリアドレスを発生させたデータの前記メモリへの格納が終了したか否かを判断する受信終了判断ステップと、
前記受信終了判断ステップにおいて、前記受信したデータの前記メモリへの格納が終了したと判断した場合、前記受信手続きステップにおいて保持していたデータの情報と前記情報処理装置からの受信順番が最も遅いとした受信順番情報とによってメモリ管理テーブルを更新する第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.
JP2005120063A 2005-04-18 2005-04-18 Data communication controller, data communication control method, and program Pending JP2006301797A (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (1)

* Cited by examiner, † Cited by third party
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