JP2001257703A - Data communication unit - Google Patents

Data communication unit

Info

Publication number
JP2001257703A
JP2001257703A JP2000070621A JP2000070621A JP2001257703A JP 2001257703 A JP2001257703 A JP 2001257703A JP 2000070621 A JP2000070621 A JP 2000070621A JP 2000070621 A JP2000070621 A JP 2000070621A JP 2001257703 A JP2001257703 A JP 2001257703A
Authority
JP
Japan
Prior art keywords
computer
data
read
orb
printer
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
JP2000070621A
Other languages
Japanese (ja)
Inventor
Shunsaku Miyazawa
俊作 宮澤
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2000070621A priority Critical patent/JP2001257703A/en
Publication of JP2001257703A publication Critical patent/JP2001257703A/en
Pending legal-status Critical Current

Links

Landscapes

  • Small-Scale Networks (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Information Transfer Systems (AREA)

Abstract

PROBLEM TO BE SOLVED: To improve probability which allows restarting transfer of print data that is interrupted by bus reset. SOLUTION: In the case a bus reset detection section 214 detects bus reset during transfer of print data and the transfer of the print data is interrupted, a job processing section 215 holds execution of reconnect time-out processing until a log-in request is made for transfer of new print data even after the lapse of a reconnect period.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、IEEE(The Instit
ute of Electrical and Electronics Engineers,Inc.)1
394に準拠したシリアルインターフェースを介して、SBP
-2(Seral Bus Protocol 2)に準拠したデータ転送プロ
トコルにしたがい、相手装置と自装置に接続された接続
機器との間のデータ転送を行うデータ通信装置に関する
ものである。
The present invention relates to an IEEE (The Instit)
ute of Electrical and Electronics Engineers, Inc.) 1
SBP via serial interface according to 394
The present invention relates to a data communication device for performing data transfer between a partner device and a connected device connected to the own device according to a data transfer protocol conforming to -2 (Seral Bus Protocol 2).

【0002】[0002]

【従来の技術】高速なデータ転送が可能なシリアルイン
ターフェースとして、IEEE(The Institute of Electri
cal and Electronics Engineers, Inc.)1394が提案され
ている。また、IEEE1394に準拠したシリアルインターフ
ェースを介してデータ転送を実現するプロトコルとし
て、SBP-2(Seral Bus Protocol 2)が提案されてい
る。
2. Description of the Related Art IEEE (The Institute of Electri) is a serial interface capable of high-speed data transfer.
cal and Electronics Engineers, Inc.) 1394 has been proposed. In addition, SBP-2 (Seral Bus Protocol 2) has been proposed as a protocol for realizing data transfer via a serial interface conforming to IEEE1394.

【0003】IEEE1394では、従来よりコンピュータおよ
びその周辺装置間のインターフェースとして利用されて
いるSCSI(Small Computer System Interface)と比べ
て、各接続機器のIDの自動割り振りや電源を入れたまま
での接続機器の取り外し(いわゆるホットスワップ)を
サポートするなど、様々な利点を有している。
[0003] In IEEE1394, compared with SCSI (Small Computer System Interface) conventionally used as an interface between a computer and its peripheral devices, the ID of each connected device is automatically assigned and the connected device is kept turned on. It has various advantages, such as supporting removal (so-called hot swap).

【0004】さて、IEEE1394において、各接続機器(ノ
ード)のIDの自動割り振りは、以下のようにして実現し
ている。
[0004] In IEEE1394, the automatic assignment of the ID of each connected device (node) is realized as follows.

【0005】すなわち、各ノードは、まず、自身が2つ
以上のノードと接続されている「枝」(Branch)なの
か、あるいは、1つのノードにのみ接続されている
「葉」(Leaf)なのかを認識する。次に、各ノードは、
予め定められた時間経過後、自身を「葉」であると認識
したノードより順に parent_notify 信号を送信する。
一方、自身を「枝」であると認識したノードは、自身が
parent_notify 信号を送出するよりも先に parent_not
ify 信号を送ってきたノードに対して child_notify信
号を送信する。このようにして、各ノード間の親子関係
を決定していく。そして、自身を「枝」であると認識し
たノードであって、自身に接続された全てのノードが子
となるノードを頂点(root)とするツリー構造を識別す
る(ツリー識別)。
[0005] That is, each node is first a “Branch” that is connected to two or more nodes, or a “Leaf” that is connected to only one node. Recognize whether or not. Next, each node:
After a predetermined time elapses, a parent_notify signal is transmitted in order from nodes that have recognized themselves as “leaves”.
On the other hand, a node that recognizes itself as a "branch"
parent_notify parent_notify signal before sending
Send the child_notify signal to the node that sent the ify signal. In this way, the parent-child relationship between the nodes is determined. Then, the node recognizes itself as a "branch", and identifies a tree structure in which all nodes connected to itself have children as vertices (root) (tree identification).

【0006】次に、ツリー構造が識別されると、各ノー
ドは、所定の順番で自身が使用するphysical_ID や管理
情報を含めた self-packet を送出して、自身の基本情
報を他のノードに公開する。ここで、physical_ID に
は、 self-packet の送出回数が記入される。すなわ
ち、最初にself-packet を送出するノードは、physical
_ID を0とし、次に、self-packet を送出するノード
は、physical_ID を1とする。このようにすることで、
各ノードが使用するIDを自動的に割り振る(自己識
別)。
Next, when the tree structure is identified, each node sends out a self-packet including the physical_ID and management information used by itself in a predetermined order, and transmits its own basic information to other nodes. Publish. Here, the number of transmissions of self-packet is entered in physical_ID. That is, the first node to send a self-packet is physical
The _ID is set to 0, and then the node that sends the self-packet sets the physical_ID to 1. By doing this,
The ID used by each node is automatically assigned (self-identification).

【0007】また、IEEE1394において、ホットスワップ
は、バスの接続トポロジが管理されている状態で、新た
なノードが接続されたり、接続されていたノードが外さ
れたり(たとえば電源オフ)すると、各ノードがトポロ
ジに関する情報を消去し、再度、ツリー識別や自己認識
を行なって各ノードのIDの自動割り振りを行うことで実
現している(バスリセット)。
[0007] In IEEE1394, hot swap is performed when a new node is connected or a connected node is disconnected (for example, when the power is turned off) in a state where the bus connection topology is managed. Deletes information about the topology, performs tree identification and self-recognition again, and automatically assigns IDs of each node (bus reset).

【0008】ところで、IEEE1394では、バスリセットの
期間中、各ノード間でのデータ転送が行われなくなる。
このため、SBP-2では、バスリセットにより中断された
データ転送の再開を保証している。
By the way, in IEEE1394, data transfer between nodes is not performed during a bus reset.
For this reason, SBP-2 guarantees resumption of data transfer interrupted by a bus reset.

【0009】さて、SBP-2を利用した各ノード間におい
て、IEEE1394で定義されているバスリセットにより中断
されたデータ転送の再開の保証は、従来、以下のように
して実現している。
Conventionally, the restart of data transfer interrupted by a bus reset defined by IEEE1394 is guaranteed between nodes using SBP-2 as follows.

【0010】すなわち、ノードAからノードBへのデータ
転送が実行されている最中にバスリセットが発生し、当
該データ転送が中断された場合、ノードBは、バスリセ
ット発生からリコネクト期間が経過するまでの間、中断
されたデータ転送以外のデータ転送が要求された場合
は、その要求を拒否し、その旨を当該要求をしたノード
に通知する。一方、ノードAよりリコネクト要求があっ
た場合は、中断されたデータ転送を再開する。したがっ
て、ノードAは、リコネクト期間内にノードBに対してリ
コネクト要求を通知することで、バスリセットにより中
断された、ノードAからノードBへのデータ転送を再開す
ることができる。
That is, if a bus reset occurs while data transfer from the node A to the node B is being performed and the data transfer is interrupted, the node B passes a reconnect period from the occurrence of the bus reset. If a data transfer other than the interrupted data transfer is requested during this period, the request is rejected and that effect is notified to the node that made the request. On the other hand, when there is a reconnect request from the node A, the interrupted data transfer is restarted. Therefore, by notifying the node B of the reconnect request within the reconnect period, the node A can restart the data transfer from the node A to the node B interrupted by the bus reset.

【0011】なお、ノードBは、リコネクト期間内にノ
ードAよりリコネクト要求がなかった場合、リコネクト
タイムアウト処理を実行し、その後のノードAよりのリ
コネクト要求を拒否し、バスリセットにより中断された
データ転送以外のデータ転送の要求を受け付け可能とす
る。
When no connection request is received from the node A within the connection period, the node B executes a connection timeout process, rejects the subsequent connection request from the node A, and stops the data transfer interrupted by the bus reset. And other data transfer requests can be accepted.

【0012】[0012]

【発明が解決しようとする課題】近年、コンピュータや
周辺機器の省電力化を図るための技術として、様々な電
力管理技術が提案されている。この種の技術により、た
とえば、入力装置に一定期間入力がない場合に、コンピ
ュータの電源をオフにして休止状態に移行させ、その後
入力があったときに、コンピュータの電源をオンにし
て、休止状態から元の動作状態に復帰させることが可能
となる。
In recent years, various power management techniques have been proposed as techniques for saving power of computers and peripheral devices. According to this type of technology, for example, when there is no input to the input device for a certain period of time, the computer is turned off and the computer shifts to a hibernate state. Can return to the original operating state.

【0013】しかしながら、このような電源管理技術が
適用されたコンピュータおよび周辺機器間のデータ転送
に、上述のIEEE1394およびSBP-2を、従来と同様に利用
すると、以下のような問題が生ずる。
However, if the above-described IEEE1394 and SBP-2 are used for data transfer between a computer and a peripheral device to which such a power management technique is applied in the same manner as in the related art, the following problems occur.

【0014】たとえば、プリンタの印刷実行中に、コン
ピュータの電源がオフになって休止状態に移行すると、
当該電源オフによりバスリセットが発生する。これによ
り、プリンタは、印刷データのコンピュータからの読み
込みを中断して、コンピュータからリコネクト要求され
るのを待つ。しかしながら、休止状態にあるコンピュー
タは、何らかの入力がされない限り復帰しない。このた
め、復帰後、プリンタにリコネクト要求を通知したとき
には、すでにリコネクト期間を経過している可能性があ
る。
For example, if the power of the computer is turned off and the printer enters the hibernation state during printing of the printer,
A bus reset occurs when the power is turned off. As a result, the printer interrupts the reading of the print data from the computer and waits for a reconnection request from the computer. However, a hibernating computer does not return unless some input is provided. For this reason, when the printer is notified of the reconnection request after the return, the reconnection period may have already passed.

【0015】この場合、プリンタは、リコネクト期間が
経過した時点でコンピュータからリコネクト要求はない
ものと判断し、リコネクトタイムアウト処理を実行し
て、排紙動作や各部のリセットなどを実施し印刷動作を
終了してしまう。このため、バスリセットにより実行が
中断されたコンピュータからプリンタへの印刷データの
転送を再開することができなくなる。
In this case, the printer determines that there is no reconnection request from the computer when the reconnection period has elapsed, executes a reconnect timeout process, performs a paper discharge operation, resets each unit, and ends the printing operation. Resulting in. For this reason, the transfer of the print data from the computer whose execution has been interrupted by the bus reset to the printer cannot be resumed.

【0016】本発明は上記事情に鑑みてなされたもので
あり、本発明の目的は、バスリセットによりデータ転送
が中断された場合に、当該データ転送を再開させること
ができる確率を向上させることが可能なデータ通信装置
を提供することにある。
The present invention has been made in view of the above circumstances, and an object of the present invention is to improve the probability that data transfer can be resumed when data transfer is interrupted by a bus reset. It is to provide a possible data communication device.

【0017】[0017]

【課題を解決するための手段】上記課題を解決するため
に、本発明のIEEE1394およびSBP-2を利用したデータ通
信装置では、リコネクト期間経過後、新たなデータ転送
の処理が要求されるまで、リコネクトタイムアウト処理
の実行を保留している。
In order to solve the above-mentioned problems, a data communication apparatus using IEEE1394 and SBP-2 according to the present invention has a configuration in which a new data transfer process is requested after a reconnect period has elapsed. Execution of the reconnect timeout process is suspended.

【0018】たとえば、バスリセットにより実行中のデ
ータ転送が中断された場合に、リコネクト期間の経過後
であっても、当該バスリセットにより実行が中断された
データ転送と異なるデータ転送の処理が要求されない限
り、当該実行が中断されたデータ転送の処理を要求した
相手装置よりのリコネクト要求を認めるようにする。そ
して、リコネクト期間の経過後、リコネクト要求を受け
取る前に、前記実行が中断されたデータ転送と異なるデ
ータ転送の処理が要求されたときに、リコネクトタイム
アウト処理を実行し、自装置に接続された接続機器にリ
セット命令を出力する。
For example, when the data transfer being executed is interrupted by a bus reset, even after the elapse of the reconnect period, a data transfer process different from the data transfer interrupted by the bus reset is not required. As far as possible, a reconnect request from the partner device that has requested the data transfer process whose execution has been interrupted is accepted. Then, after the elapse of the reconnect period, before receiving the reconnect request, when a data transfer process different from the interrupted data transfer is requested, a reconnect timeout process is executed, and the connection connected to the own device is performed. Outputs a reset command to the device.

【0019】このようにすることで、リコネクトタイム
アウト処理は、リコネクト期間が経過しただけでは実行
されない。したがって、たとえば、上述した電源管理技
術が適用されている場合において、相手装置の休止状態
への移行によりバスリセットが発生して、前記相手装置
から自装置の接続機器へのデータ転送が中断された場合
でも、当該データ転送を再開させることができる確率が
高くなる。
By doing so, the reconnect timeout process is not executed only when the reconnect period has elapsed. Therefore, for example, in the case where the above-described power management technique is applied, a bus reset occurs due to the transition of the partner apparatus to the sleep state, and the data transfer from the partner apparatus to the connected device of the own apparatus is interrupted. Even in this case, the probability that the data transfer can be restarted increases.

【0020】[0020]

【発明の実施の形態】以下、本発明の一実施形態につい
て説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS One embodiment of the present invention will be described below.

【0021】図1は、本発明の一実施形態が適用された
プリンタ2を含むシステムの概略構成図である。ここ
で、コンピュータ1、プリンタ2、スキャナ3およびデジ
タルビデオカメラ4は、各々、IEEE(The Institute of
Electrical and Electronics Engineers, Inc.)1394に
準拠したシリアルインターフェースを備えており、該イ
ンターフェースを介して互いに接続されているものとす
る。また、本システムにおいて、少なくともコンピュー
タ1およびプリンタ2間のデータ通信は、SBP-2(Seral B
us Protocol 2)に準拠したデータ転送プロトコルにし
たがい行われるものとする。
FIG. 1 is a schematic configuration diagram of a system including a printer 2 to which an embodiment of the present invention is applied. Here, each of the computer 1, the printer 2, the scanner 3, and the digital video camera 4 is an IEEE (The Institute of
Electrical and Electronics Engineers, Inc.) It is assumed that a serial interface conforming to 1394 is provided and connected to each other via the interface. In this system, at least data communication between the computer 1 and the printer 2 is performed by SBP-2 (Seral B
It shall be performed according to a data transfer protocol conforming to the us protocol 2).

【0022】以下では、説明を簡略化するために、コン
ピュータ1およびプリンタ2間でのデータ転送処理につい
てのみ説明することとする。
In the following, for the sake of simplicity, only the data transfer process between the computer 1 and the printer 2 will be described.

【0023】まず、コンピュータ1およびプリンタ2間で
行われる印刷実行シーケンスについて説明する。
First, a print execution sequence performed between the computer 1 and the printer 2 will be described.

【0024】図2は、コンピュータ1およびプリンタ2間
で行われる印刷実行シーケンスを示した図である。
FIG. 2 is a diagram showing a print execution sequence performed between the computer 1 and the printer 2.

【0025】図示するように、印刷実行シーケンスは、
1.ログイン処理、2.印刷データ転送処理、3.ログ
アウト処理に分けられる。
As shown, the print execution sequence is as follows.
1. 1. Login processing It is divided into print data transfer processing and 3. logout processing.

【0026】1.ログイン処理 コンピュータ1は、プリンタ2に、コンピュータ1がプリ
ンタ2へログインするためのLogin ORB(Operation Reque
st Block)の格納領域(具体的には、先頭アドレスおよ
び転送データ量)が記述された Write Block Request 1
001を通知する。
1. Login Process Computer 1 logs in to Printer 2 with Login ORB (Operation Request
Write Block Request 1 in which the storage area (specifically, the start address and the amount of transfer data) of the “st Block” is described.
Notify 001.

【0027】これを受けて、プリンタ2は、Write Respo
nseを返答する。その後、プリンタ2は、読出し開始アド
レスと所定の読出しデータ量を示した Read Block Requ
estを、Write Block Request 1001に記述された格納領
域のデータ全てを読み出すのに必要な数分順次生成す
る。ここで、この複数の Read Block Request の生成
は、1つのスプリットトランザクションが終了すると、
当該トランザクションによりコンピュータ1から読み出
したデータに続くデータを、次のスプリットトランザク
ションで読み出すように、順番に生成され送出される。
これにより、プリンタ2は、コンピュータ1から、Read B
lock Response を順次受け取り、 Login ORBを得る。
In response to this, the printer 2 executes the Write Respo
Reply nse. After that, the printer 2 reads the Read Block Address indicating the read start address and the predetermined read data amount.
The ests are sequentially generated for the number necessary to read all the data in the storage area described in the Write Block Request 1001. Here, generation of these multiple Read Block Requests is performed when one split transaction ends.
The data following the data read from the computer 1 by the transaction is generated and transmitted in order so as to be read in the next split transaction.
As a result, the printer 2 sends the Read B
Receive lock Response sequentially and get Login ORB.

【0028】次に、プリンタ2は、login ORBの読み出し
が終了すると、読出し開始アドレスと所定の読出しデー
タ量を示した Read Quadlet Request を送信して、コン
ピュータ1のコンフィギュレーションROMの内容を読み出
し、コンピュータ1のGUID(グローバルID)などを取得し
て、ログインしたコンピュータ1を識別する。
Next, when the reading of the login ORB is completed, the printer 2 transmits a read start address and a Read Quadlet Request indicating a predetermined read data amount, reads the contents of the configuration ROM of the computer 1, and reads out the contents of the configuration ROM of the computer 1. By acquiring the GUID (global ID) of 1 etc., the computer 1 that has logged in is identified.

【0029】それから、プリンタ2は、印刷データ転送
指示や転送すべき印刷データの格納領域などが記述され
る Command Block Agent ORB を書き込むべきプリンタ2
側のアドレス(ORBポインタ)などの情報を含んだ Logi
n Response を Write BlockRequest として送信し、そ
の後、Login ORB の処理が終了したことを示すパケット
を Write Block Request として送信する。
Then, the printer 2 writes a command block agent ORB in which a print data transfer instruction and a storage area of print data to be transferred are described.
Logi containing information such as the address of the side (ORB pointer)
n Send the Response as a Write Block Request, and then send a packet indicating that the Login ORB processing has ended as a Write Block Request.

【0030】2.印刷データ転送処理 コンピュータ1は、プリンタ2より通知された Login Res
ponse に示されたORBポインタへ、 Command Block Agen
t ORB を書き込むために、当該ORBが格納されたアドレ
スを記述したWrite Block Request 1002を送信する。
2. Print data transfer processing Computer 1 sends the Login Res
Command Block Agen to ORB pointer indicated in ponse
t To write the ORB, send a Write Block Request 1002 describing the address where the ORB is stored.

【0031】これを受けて、プリンタ2は、Write Respo
nseを返答する。次に、プリンタ2は、Write Block Requ
est 1002に記述されたアドレスに格納された Command B
lockAgent ORB を読み出すために、 Read Block Reques
t を生成し送信する。
In response to this, the printer 2 executes the Write Respo
Reply nse. Next, the printer 2 performs Write Block Requ
Command B stored at the address described in est 1002
Read Block Reques to read the lockAgent ORB
Generate and send t.

【0032】これを受けて、コンピュータ1は、Command
Block Agent ORBを格納したパケットを、 Read Block
Response として送信する。
In response to this, the computer 1 executes Command
Read the packet containing the Block Agent ORB into the Read Block
Send as Response.

【0033】次に、プリンタ2は、コンピュータ1より通
知された Read Block Response に格納された Command
Block Agent ORB を解析し、当該ORBに記述された格納
領域の印刷データをコンピュータ1から取得すべく、読
み出し開始アドレスと1回のスプリットトランザクショ
ンで転送可能な所定データ量(たとえば2Kバイト)を記
述した Read Block Request を、当該ORBに記述された
格納領域の印刷データ全てを読み出すの必要な数分順次
生成する。ここで、この複数の Read Block Request の
生成は、1つのスプリットトランザクションが終了する
と、当該トランザクションによりコンピュータ1から読
み出したデータに続くデータを、次のスプリットトラン
ザクションで読み出すように、順番に生成され送出され
る。これにより、プリンタ2は、コンピュータ1から、Re
ad Block Response を順次受け取り、印刷データを得
る。
Next, the printer 2 executes the command stored in the Read Block Response notified from the computer 1.
In order to analyze the Block Agent ORB and obtain the print data of the storage area described in the ORB from the computer 1, a read start address and a predetermined data amount (for example, 2 Kbytes) that can be transferred in one split transaction are described. Read Block Requests are sequentially generated for the number required to read all the print data in the storage area described in the ORB. Here, the plurality of Read Block Requests are generated and transmitted in order such that, when one split transaction is completed, data following data read from the computer 1 by the transaction is read in the next split transaction. You. As a result, the printer 2 sends the Re
Receives the ad Block Response sequentially and obtains print data.

【0034】その後、プリンタ2は、Command Block Age
nt ORB の処理(印刷データの転送処理)が終了したこ
とを示すパケットを Write Block Request として送信
する。
Thereafter, the printer 2 sets the Command Block Age
nt A packet indicating that ORB processing (print data transfer processing) has been completed is transmitted as a Write Block Request.

【0035】3.ログアウト処理 コンピュータ1は、プリンタ2に、コンピュータ1がプリ
ンタ2からログアウトするための Logout ORB の格納領
域が記述された Write Block Request 1003を通知す
る。
3. Logout Process The computer 1 notifies the printer 2 of a Write Block Request 1003 in which a storage area of the Logout ORB for the computer 1 to log out of the printer 2 is described.

【0036】これを受けて、プリンタ2は、 Write Resp
onse を返答する。その後、プリンタ2は、読出し開始ア
ドレスと所定の読出しデータ量を示した Read Block Re
quest を、Write Block Request 1003に記述された格納
領域のデータ全てを読み出すのに必要な数分順次生成す
る。ここで、この複数の Read Block Request の生成
は、1つのスプリットトランザクションが終了すると、
当該トランザクションによりコンピュータ1から読み出
したデータに続くデータを、次のスプリットトランザク
ションで読み出すように、順番に生成され送出される。
これにより、プリンタ2は、コンピュータ1から、Read B
lock Response を順次受け取り、 Logout ORB を得る。
In response to this, the printer 2 executes Write Resp
Reply onse. Thereafter, the printer 2 reads the read block address indicating the read start address and the predetermined read data amount.
quests are sequentially generated for the number required to read all the data in the storage area described in the Write Block Request 1003. Here, generation of these multiple Read Block Requests is performed when one split transaction ends.
The data following the data read from the computer 1 by the transaction is generated and transmitted in order so as to be read in the next split transaction.
As a result, the printer 2 sends the Read B
Receive lock Response sequentially and get Logout ORB.

【0037】それから、プリンタ2は、 logout ORB の
処理が終了したことを示すパケットを Write Block Req
uest として送信する。
Then, the printer 2 sends a packet indicating that the logout ORB processing has been completed to the Write Block Req.
Send as uest.

【0038】次に、上記の印刷実行シーケンス実行中に
バスリセットが発生して当該シーケンスが中断された場
合における、コンピュータ1およびプリンタ2間で行われ
る印刷データ転送再開実行シーケンスについて説明す
る。
Next, a description will be given of a print data transfer resuming execution sequence performed between the computer 1 and the printer 2 when a bus reset occurs during the execution of the printing execution sequence and the sequence is interrupted.

【0039】コンピュータ1およびプリンタ2間におい
て、上記の印刷実行シーケンスが実施されて印刷データ
が転送されている際に、たとえばスキャナ3が新たに接
続されたり、コンピュータ1が休止状態に移行して電源
オフになったりすると、当該シーケンスが中断され、バ
スリセットされる。
When the above-described print execution sequence is executed and the print data is transferred between the computer 1 and the printer 2, for example, the scanner 3 is newly connected, or the computer 1 is shifted to the hibernation state and the power supply is switched off. When it is turned off, the sequence is interrupted and the bus is reset.

【0040】バスリセットでは、上述したように、各ノ
ードがバスの接続トポロジに関する情報を消去し、再
度、ツリー識別や自己認識を行なって各ノードIDの自動
割り振りを行う。このため、バスリセットの前後で、コ
ンピュータ1(あるいは休止状態から復帰したコンピュー
タ1)やプリンタ2のノードIDが変化する場合がある。そ
こで、SBP-2では、コンピュータ1がプリンタ2にログイ
ン中にバスリセットされた場合、コンピュータ1(あるい
は休止状態から復帰したコンピュータ1)に、自身のノ
ードIDをログイン先であるプリンタ2に再確認させるた
めのリコネクト処理を認めている。
In the bus reset, as described above, each node erases information on the connection topology of the bus, and again performs tree identification and self-recognition to automatically assign node IDs. For this reason, before and after the bus reset, the node IDs of the computer 1 (or the computer 1 recovered from the hibernation state) and the printer 2 may change. Therefore, in the SBP-2, if the bus is reset while the computer 1 is logged in to the printer 2, the node ID of the computer 1 is reconfirmed with the printer 2 to which the computer 1 (or the computer 1 recovered from the hibernation state) is logged in. Reconnect processing is allowed.

【0041】図3は、コンピュータ1およびプリンタ2間
で行われる印刷データ転送再開実行シーケンスを示した
図である。
FIG. 3 is a diagram showing a print data transfer restart execution sequence performed between the computer 1 and the printer 2.

【0042】このシーケンスは、バスリセットにより、
各ノードがバスの接続トポロジに関する情報を消去し、
再度、ツリー識別や自己認識を行なって各ノードIDの自
動割り振りを行った後に実行される。このシーケンス
は、1.コンピュータ1によるプリンタ2の認識処理、
2.リコネクト処理、3.印刷データ転送の再開処理、
4.ログアウト処理に分けられる。
This sequence is performed by a bus reset.
Each node erases information about the bus connection topology,
The process is executed after the tree ID and the self-recognition are performed again to automatically assign each node ID. This sequence includes: Recognition process of printer 2 by computer 1,
2. 2. Reconnect processing; Restart processing of print data transfer,
4. It is divided into logout processing.

【0043】1.コンピュータ1によるプリンタ2の認識
処理 コンピュータ1は、バスリセットにより新たに割り振ら
れたノードIDとノードとの対応を認識するため、各ノー
ドからGUIDやその他のノード認識に必要な情報を取得す
る。すなわち、コンピュータ1は、各ノードに対し、Rea
d Quadlet Request を送信し、その応答として Read Qu
adlet Response を受信する処理行うことで、各ノード
からコンフィギュレーションROMの内容を読み出し、GUI
Dなどの情報を取得する。これにより、バスリセット前
にログインしていたプリンタ2を識別する。
1. Computer 1 Recognition Processing of Printer 2 The computer 1 acquires a GUID and other information necessary for node recognition from each node in order to recognize the correspondence between the node ID newly assigned by the bus reset and the node. That is, the computer 1 sends the Rea to each node.
d A Quadlet Request is sent, and the Read Qu
By executing the process of receiving adlet response, the contents of the configuration ROM are read from each node, and the GUI
Get information such as D. Thus, the printer 2 that has logged in before the bus reset is identified.

【0044】2.リコネクト処理 コンピュータ1は、プリンタ2に、コンピュータ1がプリ
ンタ2へリコネクトするための Reconnect ORB の格納領
域が記述された Write Block Request 1004を通知す
る。
2. Reconnect Processing The computer 1 notifies the printer 2 of a Write Block Request 1004 in which the storage area of the Reconnect ORB for the computer 1 to reconnect to the printer 2 is described.

【0045】これを受けて、プリンタ2は、 Write Resp
onse を返答する。その後、プリンタ2は、 Read Block
Request を、Write Block Request 1004に記述された格
納領域のデータ全てを読み出すのに必要な数分順次生成
する。ここで、この複数のRead Block Request の生成
は、1つのスプリットトランザクションが終了すると、
当該トランザクションによりコンピュータ1から読み出
したデータに続くデータを、次のスプリットトランザク
ションで読み出すように、順番に生成され送出される。
これにより、プリンタ2は、コンピュータ1から、Read B
lock Response を順次受け取り、 Reconnect ORB を得
る。
In response to this, the printer 2 executes Write Resp
Reply onse. After that, Printer 2 reads the Read Block
Requests are sequentially generated for the number required to read all data in the storage area described in the Write Block Request 1004. Here, generation of these multiple Read Block Requests is performed when one split transaction ends.
The data following the data read from the computer 1 by the transaction is generated and transmitted in order so as to be read in the next split transaction.
As a result, the printer 2 sends the Read B
Receive lock Response sequentially and get Reconnect ORB.

【0046】次に、プリンタ2は、 Reconnect ORB の読
み出しが終了すると、 Read Quadlet Request を送信し
て、コンピュータ1のコンフィギュレーションROMの内容
を読み出し、コンピュータ1のGUIDなどを取得する。こ
れにより、プリンタ2は、バスリセット前にログインし
ていたコンピュータ1を識別する。
Next, when the reading of the Reconnect ORB is completed, the printer 2 transmits a Read Quadlet Request, reads the contents of the configuration ROM of the computer 1, and acquires the GUID of the computer 1, and the like. As a result, the printer 2 identifies the computer 1 that has logged in before the bus reset.

【0047】それから、プリンタ2は、 Reconnect ORB
の処理が終了したことを示すパケットを Write Block R
equest として送信する。
Then, the printer 2 executes the Reconnect ORB
Write a packet indicating that the processing of
Send as equest.

【0048】3.印刷データ転送の再開処理 コンピュータ1は、バスリセットにより中断された印刷
実行シーケンスにおいて、プリンタ2より通知された Lo
gin Response パケットに示されたORBポインタへ、印刷
データ転送のための Command Block Agent ORB を書き
込むために、当該ORBが格納されたアドレスを記述した
Write Block Request 1005を送信する。
3. Resume processing of print data transfer In the print execution sequence interrupted by the bus reset, the computer 1
To write the Command Block Agent ORB for transfer of print data to the ORB pointer indicated in the gin Response packet, the address where the ORB was stored was described.
Send Write Block Request 1005.

【0049】これを受けて、プリンタ2は、 Write Resp
onse を返答する。次に、プリンタ2は、 Write Block R
equest 1005に記述されたアドレスに格納された Comman
d Block Agent ORB を読み出すために、 Read Block Re
quest を生成し送信する。これを受けてコンピュータ1
は、 Command Block Agent ORB を格納したパケット
を、 Read Block Response として送信する。
In response to this, the printer 2 executes Write Resp
Reply onse. Next, printer 2 writes Write Block R
Comman stored at the address described in equest 1005
d To read the Block Agent ORB, use Read Block Re
Create and send a quest. Computer 1 receiving this
Sends the packet storing the Command Block Agent ORB as Read Block Response.

【0050】次に、プリンタ2は、コンピュータ1より通
知された Read Block Response に格納された Command
Block Agent ORB を解析する。そして、当該ORBに記述
された印刷データの格納領域が、バスリセットにより実
行が中断された Command Block Agent ORB に記述され
た印刷データの格納領域と同じか否かを判断する。
Next, the printer 2 executes the command stored in the Read Block Response notified from the computer 1.
Analyze the Block Agent ORB. Then, it is determined whether or not the print data storage area described in the ORB is the same as the print data storage area described in the Command Block Agent ORB whose execution has been suspended due to the bus reset.

【0051】同じ場合は、当該ORBに記述された格納領
域の印刷データのうち、バスリセット前における当該OR
Bの処理にて未取得分のみの印刷データをコンピュータ1
から取得すべく、読み出し開始アドレスと1回のスプリ
ットトランザクションで転送可能な所定データ量(たと
えば2Kバイト)を記述した Read Block Request を、未
取得分のデータ全てを読み出すのに必要な数分順次生成
する。ここで、この複数の Read Block Request の生成
は、1つのスプリットトランザクションが終了すると、
当該トランザクションによりコンピュータ1から読み出
したデータに続くデータを、次のスプリットトランザク
ションで読み出すように、順番に生成され送出される。
これにより、プリンタ2は、コンピュータ1から、Read B
lock Response を順次受け取り、バスリセットにより実
行が中断された Command Block Agent ORB の処理にて
未取得分の印刷データを得る。
In the same case, of the print data of the storage area described in the ORB, the OR
In the processing of B, only the print data that has not been
Generates Read Block Requests describing the read start address and the amount of data that can be transferred in one split transaction (for example, 2K bytes) in order to obtain all the unacquired data. I do. Here, generation of these multiple Read Block Requests is performed when one split transaction ends.
The data following the data read from the computer 1 by the transaction is generated and transmitted in order so as to be read in the next split transaction.
As a result, the printer 2 sends the Read B
Lock Responses are sequentially received, and unacquired print data is obtained by the processing of the Command Block Agent ORB whose execution has been interrupted by a bus reset.

【0052】一方、異なる場合は、当該ORBに記述され
た格納領域の印刷データをコンピュータ1から取得すべ
く、読み出し開始アドレスと1回のスプリットトランザ
クションで転送可能な所定データ量(たとえば2Kバイ
ト)を記述した Read Block Request を、当該格納領域
の印刷データ全てを読み出すの必要な数分順次生成す
る。ここで、この複数の Read Block Request の生成
は、1つのスプリットトランザクションが終了すると、
当該トランザクションによりコンピュータ1から読み出
したデータに続くデータを、次のスプリットトランザク
ションで読み出すように、順番に生成され送出される。
これにより、プリンタ2は、コンピュータ1から、Read B
lock Response を順次受け取り、当該ORBに記述された
格納領域の印刷データを得る。
On the other hand, if different, in order to obtain the print data of the storage area described in the ORB from the computer 1, the read start address and the predetermined data amount (for example, 2 Kbytes) that can be transferred in one split transaction are set. The described Read Block Requests are sequentially generated for the number required to read all the print data in the storage area. Here, generation of these multiple Read Block Requests is performed when one split transaction ends.
The data following the data read from the computer 1 by the transaction is generated and transmitted in order so as to be read in the next split transaction.
As a result, the printer 2 sends the Read B
Lock Responses are sequentially received, and print data of the storage area described in the ORB is obtained.

【0053】その後、プリンタ2は、 Command Block Ag
ent ORB の処理(印刷データの転送処理)が終了したこ
とを示すパケットを Write Block Request として送信
する。
After that, the printer 2 sets the Command Block Ag
ent Sends a packet indicating that ORB processing (print data transfer processing) has been completed as a Write Block Request.

【0054】4.ログアウト処理 コンピュータ1は、プリンタ2に、コンピュータ1がプリ
ンタ2からログアウトするための Logout ORB の格納領
域が記述された Write Block Request 1006を通知す
る。
4. Logout Processing The computer 1 notifies the printer 2 of a Write Block Request 1006 in which a storage area of a Logout ORB for the computer 1 to log out of the printer 2 is described.

【0055】これを受けて、プリンタ2は、 Write Resp
onse を返答する。その後、コンピュータ1よりデータを
読み出すための Read Block Request を、Write Block
Request 1006に記述された格納領域のデータ全てを読み
出すのに必要な数分順次生成する。ここで、この複数の
Read Block Request の生成は、1つのスプリットトラ
ンザクションが終了すると、当該トランザクションによ
りコンピュータ1から読み出したデータに続くデータ
を、次のスプリットトランザクションで読み出すよう
に、順番に生成され送出される。これにより、プリンタ
2は、コンピュータ1から、Read Block Response を順次
受け取り、 Logout ORB を得る。
In response to this, the printer 2 executes Write Resp
Reply onse. After that, a Read Block Request for reading data from Computer 1 is sent to Write Block
The data is sequentially generated for the number necessary to read all the data in the storage area described in Request 1006. Here, this multiple
When one split transaction is completed, the Read Block Request is generated and transmitted in order so that the data following the data read from the computer 1 by the transaction is read by the next split transaction. This allows the printer
2 sequentially receives the Read Block Response from the computer 1 and obtains a Logout ORB.

【0056】それから、プリンタ2は、 logout ORB の
処理が終了したことを示すパケットを Write Block Req
uest として送信する。
Then, the printer 2 sends a packet indicating that the processing of the logout ORB has been completed to the Write Block Req.
Send as uest.

【0057】次に、以上説明したようなシーケンスを実
現するコンピュータ1およびプリンタ2について説明す
る。
Next, the computer 1 and the printer 2 that realize the above-described sequence will be described.

【0058】まず、コンピュータ1について説明する。First, the computer 1 will be described.

【0059】図4は、図1に示すコンピュータ1の概略
構成図である。
FIG. 4 is a schematic configuration diagram of the computer 1 shown in FIG.

【0060】図示するように、コンピュータ1は、デー
タ通信部11とコンピュータ本体部12を有する。
As shown, the computer 1 has a data communication unit 11 and a computer main unit 12.

【0061】コンピュータ本体部12は、図5に示すよう
に、CPU121と、メモリ122と、ハードディスク装置など
の外部記憶装置123と、CD-ROMやFDなどの可搬性を有す
る記憶媒体125からデータを読み取る読取装置124と、キ
ーボードやマウスなどの入力装置126と、ディスプレイ
などの表示装置127と、上述した各装置とデータ通信部1
1を含む要素間のデータ送受を司るインターフェース128
といった、一般的な電子計算機の構成を有している。な
お、コンピュータ本体部12では、プリンタ2を制御する
ためのプリンタドライバソフトや、プリンタ2で印刷す
べき印刷データを作成するワープロソフトやグラフィッ
クソフトなどのアプリケーションソフトが稼働している
ものとする。
As shown in FIG. 5, the computer main unit 12 transfers data from a CPU 121, a memory 122, an external storage device 123 such as a hard disk device, and a portable storage medium 125 such as a CD-ROM or FD. A reading device 124 for reading; an input device 126 such as a keyboard and a mouse; a display device 127 such as a display;
Interface 128 for sending and receiving data between elements including 1
It has a configuration of a general electronic computer. It is assumed that the computer main unit 12 is running printer driver software for controlling the printer 2, and application software such as word processing software and graphic software for creating print data to be printed by the printer 2.

【0062】なお、本実施形態のコンピュータ1には、
発明が解決しようとする課題で説明したような電源管理
技術が適用されており、入力装置126に一定期間入力が
なかった場合、CPU121が、コンピュータ本体部12および
データ通信部11の各部の情報(復帰情報)を収集し外部
記憶装置123などに格納してから、電源をオフにして、
休止状態に移行するものとする。そして、休止状態に移
行後、入力装置126に何らかの入力がされた場合、電源
をオンにして、CPU121が、外部記憶装置123などに格納
しておいた復帰情報を読み出し、コンピュータ本体部12
およびデータ通信部11の各部に設定することで、休止状
態から休止以前の動作状態に復帰するものとする。
The computer 1 of the present embodiment has
When the power management technology as described in the problem to be solved by the invention is applied, and there is no input to the input device 126 for a certain period of time, the CPU 121 transmits the information of each unit of the computer main unit 12 and the data communication unit 11 ( Return information) and store it in the external storage device 123, etc., then turn off the power,
It shall transition to a hibernation state. Then, after any transition to the hibernate state, if any input is made to the input device 126, the power is turned on, and the CPU 121 reads the return information stored in the external storage device 123 or the like, and
By setting in each part of the data communication unit 11, it is assumed that the system returns from the sleep state to the operation state before the sleep.

【0063】データ通信部11は、IEEE1394の物理レイヤ
における処理を実行するPHY処理部111と、IEEE1394のリ
ンクレイヤにおける処理を実行するLink処理部112と、I
EEE1394のトランザクションレイヤにおける処理を実行
するパケット処理部113と、SBP-2で定義されているバス
リセットを検出するバスリセット検出部114と、SBP-2に
準拠したデータ転送プロトコルを処理するジョブ処理部
115を有する。
The data communication unit 11 includes a PHY processing unit 111 that executes processing in the IEEE1394 physical layer, a Link processing unit 112 that executes processing in the IEEE1394 link layer,
A packet processing unit 113 for executing processing in the transaction layer of EEE1394, a bus reset detection unit 114 for detecting a bus reset defined in SBP-2, and a job processing unit for processing a data transfer protocol conforming to SBP-2
Has 115.

【0064】ここで、データ通信部11を構成する各要素
は、ASIC(Application Specific Integrated Circuit
s)、FPLA(Field-Programmable Logic Array)などの
集積ロジックICによりハードウエア的に構成してもよい
し、あるいは、DSP(Digital Signal Processor)によ
りソフトウエア的に構成するようにしてもよい。さら
に、ジョブ処理部115は、コンピュータ本体部11のCPU12
1に所定のプログラムを実行させることにより実現して
もよい。くわえて、データ通信部11は、コンピュータ本
体部12に装着可能な1つの装置として提供されるもので
もよい。
Here, each element constituting the data communication unit 11 is an ASIC (Application Specific Integrated Circuit).
s), may be configured in hardware by an integrated logic IC such as an FPLA (Field-Programmable Logic Array), or may be configured in software by a DSP (Digital Signal Processor). Further, the job processing unit 115 is provided with the CPU 12 of the computer main unit 11.
It may be realized by causing 1 to execute a predetermined program. In addition, the data communication unit 11 may be provided as one device attachable to the computer main unit 12.

【0065】ジョブ処理部115は、ORB(Operation Requ
est Block)を生成し、これをプリンタ2に転送するため
に必要なパケットの生成をパケット処理部113に依頼す
る。たとえば、コンピュータ1がプリンタ2へログイン/
ログアウトするための LoginORB / Logout ORB や、プ
リンタ2がコンピュータ1から印刷データを読み出すため
の Command Block Agent ORB などを生成し、所定の格
納領域に格納する。そして、パケット処理部113に対
し、プリンタ2がコンピュータ1からこれらのORBを読み
出すための Write Block Request の生成を依頼する。
The job processing unit 115 is provided with an ORB (Operation Request
est block), and requests the packet processing unit 113 to generate a packet necessary to transfer the est block to the printer 2. For example, Computer 1 logs in to Printer 2 /
A LoginORB / Logout ORB for logging out and a Command Block Agent ORB for the printer 2 to read out print data from the computer 1 are generated and stored in a predetermined storage area. Then, the printer 2 requests the packet processing unit 113 to generate a Write Block Request for the printer 2 to read these ORBs from the computer 1.

【0066】また、ジョブ処理部115は、プリンタ2がコ
ンピュータ1から印刷データを読み出すための Command
Block Agent ORB を実行中に、バスリセット検出部114
によりバスリセットが検出された場合、Link処理部112
によるツリー識別や自己認識の処理終了後、コンピュー
タ1がプリンタ2へリコネクトするための reconnect ORB
を生成し、コンピュータ本体部11の所定の格納領域に
格納する。そして、パケット処理部113に対し、プリン
タ2がコンピュータ1から当該ORBを読み出すための Writ
e Block Request の生成を依頼して、リコネクト処理を
行う。その後、パケット処理部113に対して、実行が中
断された Command Block Agent ORB をプリンタ2がコン
ピュータ1から読み出すための Write Block Request の
生成を再度依頼する。
The job processing unit 115 transmits a command for the printer 2 to read out print data from the computer 1.
While the Block Agent ORB is running, the bus reset detector 114
When a bus reset is detected by the
Reconnect ORB for computer 1 to reconnect to printer 2 after completion of tree identification and self-recognition processing by
Is generated and stored in a predetermined storage area of the computer main body 11. Then, a Writ for the printer 2 to read the ORB from the computer 1 is sent to the packet processing unit 113.
Request generation of e Block Request and perform reconnect processing. After that, the packet processing unit 113 is again requested to generate a Write Block Request for the printer 2 to read from the computer 1 the Command Block Agent ORB whose execution has been interrupted.

【0067】さらに、ジョブ処理部115は、プリンタ2が
コンピュータ1から印刷データを読み出すための Comman
d Block Agent ORB を実行中に、コンピュータ1が休止
状態に移行し、その後、復帰した場合(この場合、ジョ
ブ処理部115は、コンピュータ本体部11からコンピュー
タ1を休止以前の状態に戻すために必要な復帰情報を受
け取ることになる)、上記と同様にしてリコネクト処理
を行う。そして、パケット処理部113に対して、コンピ
ュータ1の休止状態への移行によるバスリセットにより
実行が中断された Command Block Agent ORB をプリン
タ2がコンピュータ1から読み出すための Write Block R
equest の生成を、再度依頼する。
Further, the job processing unit 115 has a command for the printer 2 to read the print data from the computer 1.
d If the computer 1 enters the hibernation state during the execution of the Block Agent ORB and then returns (in this case, the job processing unit 115 needs to return the computer 1 from the computer main unit 11 to the state before the halt. Reconnection information is received), and a reconnect process is performed in the same manner as described above. Then, the packet processing unit 113 writes the Command Block Agent ORB, whose execution has been interrupted by the bus reset due to the transition of the computer 1 to the hibernation state, from the computer 1 to the Write Block R.
Request generation of equest again.

【0068】パケット処理部113は、パケット受信部116
とパケット生成部117を有する。
The packet processing unit 113 includes a packet receiving unit 116
And a packet generation unit 117.

【0069】パケット受信部116は、PHY処理部111およ
びLink処理部112を介して他ノードからパケットを受信
する。
[0069] Packet receiving section 116 receives a packet from another node via PHY processing section 111 and Link processing section 112.

【0070】パケット生成部117は、IEEE1394に準拠し
た各種パケットを生成する。たとえば、ジョブ処理部11
5からの指示にしたがい、ジョブ処理部115が生成したOR
Bをプリンタ2に読み出させるための Write Block Reque
st を生成したり、パケット受信部116が受信した Read
Block Request が要求するデータをコンピュータ本体部
12から読み出し、当該データを含んだ Read Block Resp
onse を生成したりする。
The packet generator 117 generates various packets conforming to IEEE1394. For example, the job processing unit 11
According to the instruction from 5, OR generated by the job processing unit 115
Write Block Reque for causing printer 2 to read B
st, or the Read received by the packet receiving unit 116.
The data requested by the Block Request is sent to the computer
Read from Block 12 and read block resp containing the data
or generate onse.

【0071】次に、プリンタ2について説明する。Next, the printer 2 will be described.

【0072】図6は、図1に示すプリンタ2の概略構成
図である。
FIG. 6 is a schematic configuration diagram of the printer 2 shown in FIG.

【0073】図示するように、プリンタ2はデータ通信
部21とプリンタ本体部22を有する。
As shown, the printer 2 has a data communication unit 21 and a printer main unit 22.

【0074】プリンタ本体部22は、図7に示すように、
メモリ222と、メモリ222に格納された各種プログラムを
実行することでプリンタ本体部21を構成する各部を統括
的に制御するCPU221と、印刷媒体にデータを印刷するた
めの機構(たとえば、インクを吐出する印刷ヘッド、プ
ラテン、印刷ヘッドを搭載するキャリッジを駆動するキ
ャリッジ駆動機構、紙送り機構、および印刷媒体の給排
紙処理を行う給排紙機構など)を有するプリンタエンジ
ン224と、データ通信部22とのデータ送受を司るI/F回路
223といった、一般的なプリンタの構成を有している。
As shown in FIG. 7, the printer main body 22
A memory 222, a CPU 221 for controlling various units constituting the printer main body 21 by executing various programs stored in the memory 222, and a mechanism for printing data on a print medium (for example, ink A printhead, a platen, a carriage drive mechanism for driving a carriage on which the printhead is mounted, a paper feed mechanism, and a paper supply / discharge mechanism for supplying / discharging print media, etc.), and a data communication unit 22. I / F circuit that sends and receives data to and from
It has a general printer configuration such as 223.

【0075】データ通信部21は、IEEE1394の物理レイヤ
における処理を実行するPHY処理部211と、IEEE1394のリ
ンクレイヤにおける処理を実行するLink処理部212と、I
EEE1394のトランザクションレイヤにおける処理を実行
するパケット処理部213と、IEEE1394で定義されている
バスリセットを検出するバスリセット検出部214と、SBP
-2に準拠したデータ転送プロトコルを処理するジョブ処
理部215と、を有する。
The data communication unit 21 includes a PHY processing unit 211 that executes processing in the IEEE1394 physical layer, a Link processing unit 212 that executes processing in the IEEE1394 link layer,
A packet processing unit 213 that performs processing in the transaction layer of EEE1394, a bus reset detection unit 214 that detects a bus reset defined by IEEE1394,
And a job processing unit 215 that processes a data transfer protocol conforming to -2.

【0076】ここで、データ通信部21を構成する各要素
は、ASIC(Application Specific Integrated Circuit
s)、FPLA(Field-Programmable Logic Array)などの
集積ロジックICによりハードウエア的に構成してもよい
し、あるいは、DSP(Digital Signal Processor)によ
りソフトウエア的に構成するようにしてもよい。さら
に、ジョブ処理部215は、プリンタ本体部21のCPU221に
所定のプログラムを実行させることにより実現してもよ
い。くわえて、データ通信部21は、プリンタ本体部22に
装着可能な1つの装置として提供されるものでもよい。
Here, each element constituting the data communication unit 21 is an ASIC (Application Specific Integrated Circuit).
s), may be configured in hardware by an integrated logic IC such as an FPLA (Field-Programmable Logic Array), or may be configured in software by a DSP (Digital Signal Processor). Further, the job processing unit 215 may be realized by causing the CPU 221 of the printer main unit 21 to execute a predetermined program. In addition, the data communication unit 21 may be provided as one device that can be attached to the printer main unit 22.

【0077】パケット処理部213は、パケット受信部216
とパケット生成部217を有する。
The packet processing unit 213 includes a packet receiving unit 216
And a packet generation unit 217.

【0078】パケット受信部216は、印刷データ用バッ
ファ2163と、汎用バッファ2162と、受信セレクタ2161を
有する。
The packet receiving section 216 has a print data buffer 2163, a general-purpose buffer 2162, and a reception selector 2161.

【0079】印刷データ用バッファ2163は、コンピュー
タ1より通知された Read Block Response に含まれる印
刷データを格納し、格納した印刷データをバイト単位
で、すなわちパラレルデータとしてプリンタ本体部22に
送信する。
The print data buffer 2163 stores print data included in the Read Block Response notified from the computer 1 and transmits the stored print data to the printer main unit 22 in byte units, that is, as parallel data.

【0080】ここで、印刷データ用バッファ2163のサイ
ズは、プリンタ2がコンピュータ1から印刷データを取
得するために生成する Read Block Request (上述の印
刷実行シーケンスや印刷データ転送再開実行シーケンス
を参照)に記述される、1回のスプリットトランザクシ
ョンで転送可能な所定データ量(たとえば2Kバイト)よ
りも、大きくなるように(たとえば4Kバイト)に設定す
る。
Here, the size of the print data buffer 2163 is determined by the Read Block Request (see the print execution sequence and the print data transfer restart execution sequence described above) generated by the printer 2 to obtain the print data from the computer 1. It is set to be larger (for example, 4 Kbytes) than a predetermined data amount (for example, 2 Kbytes) that can be transferred in one split transaction to be described.

【0081】なお、印刷データ用バッファ2163に格納さ
れた印刷データのプリンタ本体部22への送信タイミング
は、たとえば、印刷データ用バッファ2163にデータが格
納された時点とすればよい。
The transmission timing of the print data stored in the print data buffer 2163 to the printer main body 22 may be, for example, the time when the data is stored in the print data buffer 2163.

【0082】汎用バッファ2162は、印刷データを格納し
た Read Block Response 以外のパケットに含まれるデ
ータを格納する。
The general-purpose buffer 2162 stores data included in a packet other than the Read Block Response storing print data.

【0083】受信セレクタ2161は、PHY処理部211および
Link処理部212を介して受け取ったパケットの送り先バ
ッファを選択する。具体的には、受け取ったパケットが
印刷データを格納した Read Block Response の場合は
印刷データ用バッファ2163を選択し、印刷データを格納
した Read Block Response 以外のパケットの場合は汎
用バッファ2162を選択する。なお、SBP-2(Seral Bus P
rotocol 2)では、パケットに当該パケットの種類など
を表す情報が付与される。受信パケットセレクタ2162
は、これらの情報を調べることで、受け取ったパケット
が 印刷データを格納した Read Block Response である
か否かを判断する。
The reception selector 2161 includes a PHY processing unit 211 and
The destination buffer of the packet received via the link processing unit 212 is selected. More specifically, if the received packet is a Read Block Response storing print data, the print data buffer 2163 is selected. If the received packet is a packet other than the Read Block Response storing print data, the general-purpose buffer 2162 is selected. SBP-2 (Seral Bus P
In rotocol 2), information indicating the type of the packet and the like is added to the packet. Receive packet selector 2162
Determines whether the received packet is a Read Block Response that stores print data by examining this information.

【0084】パケット生成部217は、印刷データ用生成
部2173と汎用生成部2172と送信セレクタ2171を有する。
The packet generator 217 includes a print data generator 2173, a general-purpose generator 2172, and a transmission selector 2171.

【0085】印刷データ用生成部2173は、読出し開始ア
ドレスと読出しデータ量を記述した、コンピュータ1よ
り印刷データを読み出すための Read Block Request を
生成する。なお、印刷データ用生成部2172は、パケット
受信部216の印刷データ用バッファ2163の空き容量を監
視する。そして、印刷データ用バッファ2163に ReadBl
ock Request に記述される読出しデータ量分の空き容量
があるのを確認してから、当該 Read Block Request を
生成する。
The print data generation unit 2173 generates a Read Block Request for reading the print data from the computer 1, which describes the read start address and the read data amount. The print data generation unit 2172 monitors the free space of the print data buffer 2163 of the packet reception unit 216. Then, ReadBl is stored in the print data buffer 2163.
Confirm that there is free space for the read data amount described in the ock Request, and then generate the Read Block Request.

【0086】汎用生成部2172は、コンピュータ1より印
刷データを読み出すための Read Block Request 用パケ
ット以外のパケットを生成する。
The general-purpose generating unit 2172 generates a packet other than the Read Block Request packet for reading the print data from the computer 1.

【0087】送信セレクタ2171は、印刷データ用生成部
2173および汎用生成部2172のいずれか一方を選択し、選
択したパケット生成部で生成されたパケットを、PHY処
理部211およびLink処理部212を介してコンピュータ1に
送信する。
The transmission selector 2171 is a print data generation unit.
One of the 2173 and the general-purpose generation unit 2172 is selected, and the packet generated by the selected packet generation unit is transmitted to the computer 1 via the PHY processing unit 211 and the Link processing unit 212.

【0088】ジョブ処理部215は、実行状況監視部2151
とジョブ実行部2152を有する。
The job processing unit 215 includes an execution status monitoring unit 2151
And a job execution unit 2152.

【0089】実行状況監視部2152は、コンピュータ1か
ら読み出した印刷データ転送のための Command Block A
gent ORB について、当該ORBにしたがい印刷データ用生
成部2172で生成した Read Block Request のパケット数
と、当該 Read Block Request に対する応答としてコン
ピュータ1より受け取った Read Block Response のパケ
ット数を、当該ORBの実行が完了するまで計数する。
The execution status monitoring unit 2152 includes a Command Block A for transferring the print data read from the computer 1.
For the gent ORB, the execution of the ORB is based on the number of Read Block Request packets generated by the print data generator 2172 according to the ORB and the number of Read Block Response packets received from the computer 1 in response to the Read Block Request. Count until complete.

【0090】ジョブ実行部2152は、汎用バッファ2162に
格納されたパケットを解析して、その内容に応じた処理
を行う。
The job execution unit 2152 analyzes the packet stored in the general-purpose buffer 2162 and performs a process according to the content.

【0091】たとえば、汎用バッファ2162に格納された
パケットが、 Login ORB / LogoutORB や Reconnect OR
B の格納先が記述された Write Block request である
場合、コンピュータ1から当該ORBを取得すべく、汎用パ
ケット生成部2172に通知する。これを受けて、汎用パケ
ット生成部2172は、Read Block Request を、前記 Writ
e Block Request に格納領域が記述されたORBを読み出
すの必要な数分生成する。
For example, if the packet stored in the general-purpose buffer 2162 is a Login ORB / LogoutORB or a Reconnect OR
When the storage destination of B is a Write Block request in which the ORB is described, the general purpose packet generation unit 2172 is notified to obtain the ORB from the computer 1. In response to this, the general packet generation unit 2172 sends a Read Block Request to the Writ
Generate as many as necessary to read out ORBs whose storage area is described in e Block Request.

【0092】また、たとえば、汎用パケットバッファ21
62に格納されたパケットが、印刷データ転送のための C
ommand Block Agent ORB を格納した Read Block Respo
nseである場合、当該ORBに記述された格納領域の印刷デ
ータをコンピュータ1から取得すべく、印刷データ用生
成部2173に通知する。これを受けて、印刷データ用生成
部2173は、 Read Block Request を、前記ORBに格納領
域が記述された印刷データを読み出すの必要な数分生成
する。
For example, the general packet buffer 21
The packet stored in 62 is the C for print data transfer.
Read Block Respo containing ommand Block Agent ORB
If nse, the print data generation unit 2173 is notified to obtain the print data of the storage area described in the ORB from the computer 1. In response to this, the print data generation unit 2173 generates Read Block Requests for the number required to read the print data in which the storage area is described in the ORB.

【0093】なお、上記の Read Block Request の生成
は、1つのスプリットトランザクションが終了すると、
当該トランザクションよりコンピュータ1から読み出し
たデータに続くデータを、次のスプリットトランザクシ
ョンで読み出すように、順番に生成され送出される。
[0093] The generation of the above Read Block Request is performed when one split transaction ends.
The data subsequent to the data read from the computer 1 from the transaction is generated and transmitted in order so as to be read in the next split transaction.

【0094】また、ジョブ実行部2152は、バスリセット
検出部214によりバスリセットが検出された場合、パケ
ット生成部217およびパケット受信部216を初期化する。
When the bus reset is detected by the bus reset detection unit 214, the job execution unit 2152 initializes the packet generation unit 217 and the packet reception unit 216.

【0095】ただし、図2に示す印刷データ転送処理
(コンピュータ1より読み出した印刷データ転送のため
の Command Block Agent ORB にしたがった処理)を実
行中にバスリセットされた場合、パケット受信部216の
印刷データ用バッファ2163の初期化は、バスリセット終
了後、SBP-2で規定するリコネクト期間が経過するまで
待つ。また、前記リコネクト期間経過後であっても、コ
ンピュータ1より、新たな印刷データ転送シーケンスを
実行するための Login ORB 読込み指示(図2に示す Wr
ite Block Request 1001)を受け取るまでは、行わな
い。
However, if the bus is reset during execution of the print data transfer processing shown in FIG. 2 (processing in accordance with the Command Block Agent ORB for transferring print data read from the computer 1), the printing of the packet receiving unit 216 is performed. The initialization of the data buffer 2163 waits until the reconnect period specified by SBP-2 has elapsed after the bus reset. Even after the reconnect period has elapsed, the computer 1 issues a Login ORB read instruction to execute a new print data transfer sequence (Wr shown in FIG. 2).
Do not perform until you receive ite Block Request 1001).

【0096】前記リコネクト期間中に、あるいは、前記
リコネクト期間経過後、新たな印刷データ転送シーケン
スを実行するための Login ORB 読込み指示を受け取る
前に、コンピュータ1より、バスリセットにより実行が
中断された印刷データ転送を再開するための Reconnect
ORB 読込み指示(図3に示す Write Block Request100
4)を受け取った場合、図3に示すリコネクト処理から
ログアウト処理までを行う。
During the reconnect period or after the reconnect period elapses, before receiving a Login ORB read instruction for executing a new print data transfer sequence, the printing interrupted by the bus reset from the computer 1 is received from the computer 1. Reconnect to resume data transfer
ORB read instruction (Write Block Request 100 shown in Fig. 3)
When 4) is received, the process from the reconnect process to the logout process shown in FIG. 3 is performed.

【0097】この際、図3に示す印刷データ転送再開処
理において、コンピュータ1より新たに読み出した印刷
データ転送のための Command Block Agent ORB が示す
印刷データの格納領域が、バスリセットにより実行が中
断された Command Block Agent ORB が示す印刷データ
の格納領域と同じ場合、印刷データ用バッファ2163の初
期化は行わない。ジョブ実行部2152は、当該ORBが示す
印刷データの格納領域と、実行状況監視部2152に保持さ
れた、当該ORBの実行がバスリセットにより中断された
際の Read Block Request あるいは Read Block Respon
se のパケット数から、当該ORBについて、取得済みの印
刷データ(バスリセット前に既に読み出した印刷デー
タ)を除いた、未取得分の印刷データの格納領域を特定
する。そして、未取得分の印刷データをコンピュータ1
から取得すべく、印刷データ用生成部2173に通知する。
これを受けて印刷データ用生成部2173は、前記未取得分
の印刷データを読み出すのに必要な数分、 read block
request を生成する。
At this time, in the print data transfer resuming process shown in FIG. 3, the execution of the print data storage area newly read from the computer 1 and indicated by the Command Block Agent ORB for transfer of the print data is interrupted by a bus reset. If it is the same as the print data storage area indicated by the Command Block Agent ORB, the print data buffer 2163 is not initialized. The job execution unit 2152 stores the print data storage area indicated by the ORB and the Read Block Request or Read Block Response when the execution of the ORB is interrupted by the bus reset, which is held in the execution status monitoring unit 2152.
From the number of packets of se, the storage area for print data that has not been acquired is specified, excluding the acquired print data (print data already read before the bus reset) for the ORB. Then, the unacquired print data is transferred to the computer 1
To the print data generation unit 2173 to obtain the print data.
In response to this, the print data generation unit 2173 reads the read block by the number necessary for reading the unacquired print data.
Generate request.

【0098】一方、前記リコネクト期間中に、あるい
は、前記リコネクト期間経過後、新たな印刷データ転送
シーケンスを実行するための Login ORB 読込み指示を
受け取る前に、コンピュータ1より Reconnect ORB 読込
み指示を受け取らなかった場合、もしくは、Reconnect
ORB 読込み指示を受けとったけれども、コンピュータ1
より新たに読み出した印刷データ転送のための Command
Block Agent ORB が示す印刷データの格納領域が、バ
スリセットにより実行が中断された Command Block Age
nt ORB が示す印刷データの格納領域と異なる場合、ま
たは、バッファをクリアする要求を受け付けた場合は、
印刷データ用バッファ2163の初期化を行う。
On the other hand, during the reconnect period or after the reconnect period, before receiving the Login ORB read instruction for executing a new print data transfer sequence, the computer 1 did not receive the Reconnect ORB read instruction from the computer 1. Or Reconnect
I received the ORB reading instruction, but the computer 1
Command for transferring newly read print data
The storage area of the print data indicated by the Block Agent ORB is the Command Block Age whose execution was interrupted by a bus reset.
If it is different from the print data storage area indicated by the nt ORB, or if a request to clear the buffer is received,
The print data buffer 2163 is initialized.

【0099】なお、前記リコネクト期間経過後、Reconn
ect ORB 読込み指示を受け取る前に、新たな印刷データ
転送シーケンスを実行するための Login ORB 読込み指
示を受け取った場合、ジョブ実行部2152は、印刷データ
用バッファ2163の初期化に加えて、ジョブ処理部215自
身の初期化と、プリンタ本体部22に対する初期化命令の
送出(リコネクトタイムアウト処理)を行う。プリンタ
本体部22は、初期化命令を受け取ると、排紙動作やプリ
ンタ本体部22各部の初期化を行う。
After the elapse of the reconnect period, Reconn
ect If a Login ORB read instruction for executing a new print data transfer sequence is received before receiving the ORB read instruction, the job execution unit 2152 initializes the print data buffer 2163 and executes the job processing unit. 215 initializes itself and sends an initialization command to the printer main unit 22 (reconnect timeout process). Upon receiving the initialization command, the printer main body 22 performs a paper discharging operation and initializes each part of the printer main body 22.

【0100】次に、上記構成のコンピュータ1およびプ
リンタ2の動作について説明する。
Next, the operation of the computer 1 and the printer 2 having the above configurations will be described.

【0101】まず、コンピュータ1の動作について説明
する。
First, the operation of the computer 1 will be described.

【0102】図8は、図2に示す印刷実行シーケンスで
のコンピュータ1の動作を説明するためのフロー図であ
る。
FIG. 8 is a flowchart for explaining the operation of the computer 1 in the print execution sequence shown in FIG.

【0103】まず、ジョブ処理部115は、コンピュータ
本体部12より印刷指示を受けると、図2に示すログイン
処理を実行する(ステップS801-S802)。
First, upon receiving a print instruction from the computer main unit 12, the job processing unit 115 executes a login process shown in FIG. 2 (steps S801-S802).

【0104】具体的には、ジョブ処理部115は、コンピ
ュータ1がプリンタ2へログインするための Login ORB
を生成し、所定の格納領域に格納する。それから、パケ
ット生成部117に、 Login ORB の格納領域が記述された
Write Block Request (図2に示す Login ORB 読込み
指示1001)を生成させてプリンタ2に送信する。そし
て、パケット受信部116が Write Block Request に対す
る応答である Write Response をプリンタ2より受け取
るのを待つ。
More specifically, the job processing unit 115 provides a Login ORB for the computer 1 to log in to the printer 2.
Is generated and stored in a predetermined storage area. Then, the storage area of the Login ORB was described in the packet generator 117.
A Write Block Request (Login ORB read instruction 1001 shown in FIG. 2) is generated and transmitted to the printer 2. Then, it waits for the packet receiving unit 116 to receive a Write Response, which is a response to the Write Block Request, from the printer 2.

【0105】プリンタ2より受け取った Write Response
が、コンピュータ1のログインを許可することを示して
いる場合(ステップS801でYesの場合)、ステップS802
に移行して、ログイン処理を継続する。一方、コンピュ
ータ1のログインを許可しないことを示している場合
(ステップS801でNoの場合)は、ログイン処理を実行す
ることなく図8のフローを終了する。
Write Response received from Printer 2
Indicates that log-in of the computer 1 is permitted (Yes in step S801), step S802
Then, the login processing is continued. On the other hand, if it is indicated that the login of the computer 1 is not permitted (No in step S801), the flow in FIG. 8 ends without executing the login process.

【0106】ステップS802に移行すると、パケット生成
部117は、パケット受信部116を介してプリンタ2より Re
ad Block Request を受け取るのを待つ。そして、受け
取った Read Block Request が要求するデータを読み出
し、当該データを含んだ Read Block Response をプリ
ンタ2に送信する。これにより、 Login ORB をプリンタ
2に読み込ませる。
In step S 802, the packet generation unit 117 sends a request from the printer 2 via the packet reception unit 116.
Wait for ad Block Request. Then, the data read by the received Read Block Request is read, and a Read Block Response including the data is transmitted to the printer 2. This allows the Login ORB to be
Read in 2.

【0107】それから、パケット生成部117は、パケッ
ト受信部116を介してプリンタ2より受け取った Read Qu
adlet Request が要求するデータを読み出し、当該デー
タを含んだ Read Quadlet Request をプリンタ2に送信
する。これにより、コンピュータ1のコンフィギュレー
ションROMの内容をプリンタ2に読み込ませ、コンピュー
タ1のGUID(グローバルID)などを認識させる。次に、ジ
ョブ処理部115は、パケット受信部116を介してプリンタ
2より受け取った Write Block Request に格納されてい
る、印刷データ転送のための Command Block Agent ORB
を書き込むべきプリンタ2側のアドレス(ORBポイン
タ)などの情報を含んだ Login Response を取得する。
Then, the packet generation section 117 reads the Read Queries received from the printer 2 through the packet reception section 116.
The data read by the adlet Request is read, and a Read Quadlet Request including the data is transmitted to the printer 2. As a result, the content of the configuration ROM of the computer 1 is read by the printer 2, and the GUID (global ID) of the computer 1 is recognized. Next, the job processing unit 115 communicates with the printer via the packet receiving unit 116.
Command Block Agent ORB for print data transfer stored in Write Block Request received from 2
Obtain a Login Response that includes information such as the address (ORB pointer) of the printer 2 to which is to be written.

【0108】次に、ジョブ処理部115は、図2に示す印
刷データ転送処理を実行する(ステップS803)。
Next, the job processing section 115 executes the print data transfer process shown in FIG. 2 (step S803).

【0109】具体的には、ジョブ処理部115は、印刷デ
ータ転送のための Command Block Agent ORB を生成
し、所定の格納領域に格納する。そして、パケット生成
部117に、プリンタ2が当該ORBを読み出すための Write
Block Request (図2に示す Command Block Agent ORB
読込み指示1002)を生成させ、プリンタ2に送信する。
その後、パケット生成部117は、パケット受信部116で受
信した Read Block Request が要求するデータを読み出
して、当該データを含んだ Read Block Responseをプリ
ンタ2に送信する。これにより、Command Block Agent O
RB をプリンタ2に読み込ませる。
More specifically, the job processing unit 115 generates a Command Block Agent ORB for transferring print data, and stores it in a predetermined storage area. Then, the packet generation unit 117 writes a Write command for the printer 2 to read the ORB.
Block Request (Command Block Agent ORB shown in Fig. 2
A read instruction 1002) is generated and transmitted to the printer 2.
After that, the packet generation unit 117 reads out the data requested by the Read Block Request received by the packet reception unit 116, and transmits a Read Block Response including the data to the printer 2. This allows Command Block Agent O
Read RB into printer 2.

【0110】それから、パケット生成部117は、パケッ
ト受信部116で受信した Read BlockRequest が要求する
データを読み出して、当該データを含んだ Read Block
Response をプリンタ2に送信する。この処理を、パケッ
ト受信部116が前記 CommandBlock Agent ORB にしたが
った処理(印刷データ転送処理)の終了を示す WriteBl
ock Response を受け取るまで繰り返し行う。これによ
り印刷データをプリンタ2に読み込ませる。
Then, the packet generation unit 117 reads out the data requested by the Read Block Request received by the packet reception unit 116, and reads the Read Block containing the data.
Send Response to Printer 2. This processing is performed by the packet receiving unit 116 with WriteBl indicating that the processing (print data transfer processing) according to the CommandBlock Agent ORB is completed.
Repeat until ock Response is received. This causes the printer 2 to read the print data.

【0111】次に、ジョブ処理部115は、図2に示すロ
グアウト処理を実行する(ステップS804)。
Next, the job processing section 115 executes a logout process shown in FIG. 2 (step S804).

【0112】具体的には、ジョブ処理部115は、プリン
タ2からログアウトするための Logout ORB を生成し、
所定の格納領域に格納する。そして、パケット生成部11
7に、プリンタ2が当該ORBを読み出すための Write Bloc
k Request (図2に示す Logout ORB 読込み指示1003)
を生成させ、プリンタ2に送信する。その後、パケット
生成部117は、パケット受信部117で受信した Read Bloc
k Request が要求するデータを読み出して、当該データ
を含んだ Read Block Response をプリンタ2に送信す
る。これにより、Logout ORBをプリンタ2に読み込ませ
る。
Specifically, the job processing unit 115 generates a Logout ORB for logging out of the printer 2,
It is stored in a predetermined storage area. Then, the packet generator 11
7 shows Write Bloc for printer 2 to read the ORB.
k Request (Logout ORB read instruction 1003 shown in Fig. 2)
Is generated and transmitted to the printer 2. After that, the packet generating unit 117 reads the Read Bloc received by the packet receiving unit 117.
The data requested by kRequest is read, and a Read Block Response including the data is transmitted to the printer 2. This causes the printer 2 to read the Logout ORB.

【0113】図9は、図3に示す印刷データ転送再開実
行シーケンスでのコンピュータ1の動作を説明するため
のフロー図である。
FIG. 9 is a flowchart for explaining the operation of the computer 1 in the print data transfer restart execution sequence shown in FIG.

【0114】プリンタ2へログイン中にバスリセットが
発生し、バスリセット検出部114がこれを検出すると
(ステップS901)、あるいは、プリンタ2へログイン中
に、コンピュータ1が休止状態に移行して電源オフにな
り、その後、電源オンして休止状態から復帰し、コンピ
ュータ本体部12から復帰情報(プリンタ2へログインし
ていたことを示す情報が含まれる)を受け取ると(ステ
ップS902)、ジョブ処理部115は、パケット処理部113を
初期化する(ステップS903)。なお、バスリセット(休
止状態からの復帰においても、コンピュータ1の電源オ
ンによりバスリセットが発生する)により、Link処理部
112は、他のノードと強調してツリー識別や自己認識を
行い、ノードIDを取得する。
When a bus reset occurs during the log-in to the printer 2 and the bus reset detecting unit 114 detects this (step S901), or during the log-in to the printer 2, the computer 1 shifts to a hibernate state and the power is turned off. After that, when the power is turned on to return from the hibernation state and the return information (including the information indicating that the user has logged in to the printer 2 is included) is received from the computer main unit 12 (step S902), the job processing unit 115 Initializes the packet processing unit 113 (step S903). Note that a bus reset (a bus reset occurs when the power of the computer 1 is turned on even when returning from the hibernation state), and the Link processing unit
Numeral 112 performs tree identification and self-recognition by emphasizing it with other nodes, and acquires node IDs.

【0115】次に、ジョブ処理部115は、図3に示すプ
リンタ2の認識処理を実行する(ステップS904)。
Next, the job processing section 115 executes the printer 2 recognition process shown in FIG. 3 (step S904).

【0116】具体的には、パケット生成部117に Read Q
uadlet Request を生成させ、これを任意のノードIDを
有するノードに送信する。そして、その応答として受信
したRead Quadlet Response をパケット受信部116から
受け取ることで、当該ノードからコンフィギュレーショ
ンROMの内容を読み出して、GUIDなどの情報を取得す
る。この処理を、全てのノードに対して行うことで、バ
スリセットにより新たに割り振られたノードIDとノード
との対応を認識する。これにより、バスリセット前にロ
グインしていたプリンタ2を識別する。
Specifically, the packet generation unit 117
Generate a uadlet Request and send it to the node with any node ID. Then, by receiving the Read Quadlet Response received as a response from the packet receiving unit 116, the content of the configuration ROM is read from the node and information such as the GUID is obtained. By performing this process for all the nodes, the correspondence between the node ID newly assigned by the bus reset and the node is recognized. Thus, the printer 2 that has logged in before the bus reset is identified.

【0117】次に、ジョブ処理部115は、図3に示すリ
コネクト処理を実行する(ステップS905-S906)。
Next, the job processing section 115 executes a reconnect process shown in FIG. 3 (steps S905-S906).

【0118】具体的には、プリンタ2へリコネクトする
ための Reconnect ORB を生成し、所定の格納領域に格
納する。そして、パケット生成部117に、プリンタ2が当
該ORBを読み出すための Write Block Request (図3に
示す Reconnect ORB 読込み指示1004)を生成させてプ
リンタ2に送信する。そして、パケット受信部116が Wri
te Block Request に対する応答である Write Response
をプリンタ2より受け取るのを待つ。
More specifically, a Reconnect ORB for reconnecting to the printer 2 is generated and stored in a predetermined storage area. Then, the packet generation unit 117 generates a Write Block Request (the Reconnect ORB read instruction 1004 shown in FIG. 3) for the printer 2 to read the ORB, and transmits the request to the printer 2. Then, the packet receiving unit 116
Write Response which is a response to te Block Request
Wait for printer 2 to receive.

【0119】プリンタ2より受け取った Write Response
が、コンピュータ1のリコネクトを許可することを示し
ている場合(ステップS905でYesの場合)、ステップS90
6に移行して、リコネクト処理を継続する。一方、コン
ピュータ1のリコネクトを許可しないことを示している
場合(ステップS905でNoの場合)は、リコネクト処理を
実行することなく図9のフローを終了する。
Write Response received from Printer 2
Indicates that the reconnection of the computer 1 is permitted (Yes in step S905), step S90
Move to step 6 to continue the reconnect process. On the other hand, when it is indicated that the reconnection of the computer 1 is not permitted (No in step S905), the flow in FIG. 9 ends without executing the reconnect process.

【0120】ステップS906に移行すると、パケット生成
部117は、パケット受信部116で受信した Read Block Re
quest が要求するデータを読み出して、当該データを含
んだRead Block Response をプリンタ2に送信する。こ
れにより、Reconnect ORBをプリンタ2に読み込ませ
る。
At step S906, the packet generator 117 receives the Read Block Re
The data requested by the quest is read, and a Read Block Response including the data is transmitted to the printer 2. This causes the printer 2 to read the Reconnect ORB.

【0121】次に、ジョブ処理部115は、図3に示す印
刷データ転送再開処理を実行する(ステップS907)。
Next, the job processing section 115 executes the print data transfer restart processing shown in FIG. 3 (step S907).

【0122】具体的には、印刷データの転送指示や転送
すべき印刷データの格納領域が記述された Command Blo
ck Agent ORB を生成し、所定の格納領域に格納する。
そして、パケット生成部117に、プリンタ2が当該ORBを
読み出すための Write BlockRequest (図3に示す Com
mand Block Agent ORB 読込み指示1005)を生成させ、
プリンタ2に送信する。その後、パケット生成部117は、
パケット受信部116で受信した Read Block Request が
要求するデータを読み出して、当該データを含んだ Rea
d Block Response をプリンタ2に送信する。これによ
り、Command Block Agent ORB をプリンタ2に読み込ま
せる。
More specifically, the command block in which a print data transfer instruction and a print data storage area to be transferred are described.
Generate ck Agent ORB and store it in the specified storage area.
Then, a write block request (Com shown in FIG. 3) for the printer 2 to read the ORB is sent to the packet generation unit 117.
mand Block Agent ORB read instruction 1005) is generated,
Send to printer 2. After that, the packet generation unit 117
The packet receiving unit 116 reads out the data requested by the Read Block Request, and reads the data containing the data.
d Send Block Response to Printer 2. This causes the printer 2 to read the Command Block Agent ORB.

【0123】それから、パケット生成部117は、パケッ
ト受信部116で受信した Read BlockRequest が要求する
データを読み出して、当該データを含んだ Read Block
Response をプリンタ2に送信する。この処理を、パケッ
ト受信部116が前記 CommandBlock Agent ORBにしたがっ
た処理(印刷データ転送処理)の終了を示す WriteBloc
k Response を受け取るまで繰り返し行う。これによ
り、印刷データをプリンタ2に読み込ませる。
Then, the packet generation unit 117 reads out the data requested by the Read Block Request received by the packet reception unit 116, and reads out the Read Block containing the data.
Send Response to Printer 2. This processing is performed by the packet receiving unit 116 by the WriteBloc indicating the end of the processing (print data transfer processing) according to the CommandBlock Agent ORB.
Repeat until k Response is received. This causes the printer 2 to read the print data.

【0124】なお、図2に示す印刷データ転送処理中に
バスリセット(コンピュータ1の休止状態移行によるバ
スリセットを含む)が発生した場合、すなわち、 Comma
nd Block Agent ORB をプリンタ2に読み込ませるための
Write Block Request (図2に示す Command Block Ag
ent ORB 読込み指示1002)を送信してから、当該ORBに
したがった処理の終了を示す Write Block Response を
受け取るまでの間に、バスリセットが発生した場合、ジ
ョブ処理115は、パケット生成部117に、実行が中断され
た前記 Command Block Agent ORB をプリンタ2に読み込
ませるための Write Block Request を再度生成させ、
プリンタ2に送信する。
When a bus reset (including a bus reset due to the transition of the computer 1 to the hibernation state) occurs during the print data transfer process shown in FIG.
nd Block Agent ORB
Write Block Request (Command Block Ag shown in Fig. 2)
If a bus reset occurs between the transmission of the ent ORB read instruction 1002) and the reception of a Write Block Response indicating the end of the processing according to the ORB, the job processing 115 A Write Block Request for causing the printer 2 to read the Command Block Agent ORB whose execution has been interrupted is generated again,
Send to printer 2.

【0125】次に、ジョブ処理部115は、図3に示すロ
グアウト処理を実行する(ステップS908)。
Next, the job processing section 115 executes a logout process shown in FIG. 3 (step S908).

【0126】具体的には、プリンタ2からログアウトす
るための Logout ORB を生成し、所定の格納領域に格納
する。そして、パケット生成部117に、プリンタ2が当該
ORBを読み出すための Write Block Request (図3に示
す Logout ORB 読込み指示1006)を生成させ、プリンタ
2に送信する。その後、パケット生成部117は、パケット
受信部117で受信した Read Block Request が要求する
データを読み出して、当該データを含んだ Read Block
Response をプリンタ2に送信する。これにより、Logout
ORBをプリンタ2に読み込ませる。
Specifically, a Logout ORB for logging out of the printer 2 is generated and stored in a predetermined storage area. Then, the printer 2 sends the packet generation unit 117
Generate a Write Block Request (Logout ORB read instruction 1006 shown in Fig. 3) for reading the ORB, and
Send to 2. Thereafter, the packet generation unit 117 reads out the data requested by the Read Block Request received by the packet
Send Response to Printer 2. This allows for a Logout
The ORB is read by the printer 2.

【0127】次に、プリンタ2の動作について説明す
る。
Next, the operation of the printer 2 will be described.

【0128】図10は、図2に示す印刷実行シーケンス
でのプリンタ2の動作を説明するためのフロー図であ
る。
FIG. 10 is a flowchart for explaining the operation of the printer 2 in the print execution sequence shown in FIG.

【0129】まず、ジョブ実行部2152は、図2に示すロ
グイン処理を実行する(ステップS1001-S1002)。
First, the job execution unit 2152 executes the login processing shown in FIG. 2 (steps S1001-S1002).

【0130】具体的には、ジョブ実行部2152は、汎用バ
ッファ2162を介して、コンピュータ1より Login ORB の
格納領域が記述された Write Block Request (図2に
示すLogin ORB 読込み指示1001)を受信すると、コンピ
ュータ1のログインを許可するか否かを決定する。
More specifically, the job execution unit 2152 receives a Write Block Request (Login ORB read instruction 1001 shown in FIG. 2) describing the storage area of the Login ORB from the computer 1 via the general-purpose buffer 2162. Then, it is determined whether or not the login of the computer 1 is permitted.

【0131】コンピュータ1のログインを許可する場合
(ステップS1001でYesの場合)は、汎用生成部2172に、
コンピュータ1のログインを許可する旨示した Write Re
sponse を生成させて、プリンタ2に送信し、その後、ス
テップ1002に移行してログイン処理を継続する。一方、
コンピュータ1のログインを許可しない場合(たとえばS
BP-2で規定するリコネクト期間中の場合)(ステップS1
001でNoの場合)は、コンピュータ1のログインを許可し
ない旨示した Write Response を生成させて、プリンタ
2に送信し、その後、ログイン処理を実行することなく
図10のフローを終了する。
If the login of the computer 1 is permitted (Yes in step S1001), the general-purpose generation unit 2172
Write Re indicating that login to computer 1 is permitted
A sponse is generated and transmitted to the printer 2, and then the process proceeds to step 1002 to continue the login process. on the other hand,
If login of computer 1 is not allowed (for example, S
During the reconnect period specified in BP-2) (Step S1
(No in 001), generates a Write Response indicating that computer 1 login is not permitted, and
2 and thereafter terminates the flow of FIG. 10 without executing the login process.

【0132】ステップS1002に移行すると、ジョブ実行
部2152は、汎用生成部2172に、ReadBlock Request を、
Write Block Request に格納領域が記述された Login O
RBを読み出すのに必要な数分生成させ、コンピュータ1
に送信する。そして、その応答である Read Block Resp
onse を汎用バッファ2162を介して受け取る。これによ
り、コンピュータ1から Login ORB を読み出す。
In step S1002, the job execution unit 2152 sends the ReadBlock Request to the general-purpose generation unit 2172,
Login O with storage area described in Write Block Request
Generate as many RBs as necessary to read
Send to And the response, Read Block Resp
onse is received via the general purpose buffer 2162. As a result, the Login ORB is read from the computer 1.

【0133】次に、ジョブ実行部2152は、 login ORB
の読み出しが終了すると、汎用生成部2172に Read Quad
let Request を生成させてコンピュータ1に送信し、そ
の応答である Read Quadlet Response を汎用バッファ2
162を介して受け取る。これにより、コンピュータ1のコ
ンフィギュレーションROMの内容を読み出し、コンピュ
ータ1のGUIDなどを取得して、ログインしたコンピュー
タ1を識別する。
Next, the job execution unit 2152 executes the login ORB
When the reading of the data has been completed, the general-purpose
Generates a Let Request and sends it to the computer 1, and sends the Read Quadlet Response as a response to the general-purpose buffer 2.
Receive via 162. Thereby, the contents of the configuration ROM of the computer 1 are read, the GUID of the computer 1 and the like are acquired, and the computer 1 that has logged in is identified.

【0134】それから、ジョブ実行部2152は、印刷デー
タ転送指示や転送すべき印刷データの格納領域などが記
述される Command Block Agent ORB を書き込むべきプ
リンタ2側のアドレス(ORBポインタ)などの情報を含ん
だ Login Response を生成し、これを含んだ Write Blo
ck Request を汎用性生成部2172に生成させてコンピュ
ータ1に送信する。その後、汎用性生成部2172に、Login
ORB の処理が終了したことを示すデータを含んだ Writ
e Block Request 生成させ、コンピュータ1に送信す
る。
The job execution unit 2152 includes information such as the address (ORB pointer) of the printer 2 to which the Command Block Agent ORB in which the print data transfer instruction and the print data storage area to be transferred are described is written. Generate Login Response and include Write Blo
The general-purpose generating unit 2172 generates an ck Request and transmits it to the computer 1. After that, the versatility generation unit 2172
Writ containing data indicating that ORB processing has been completed
Generate e Block Request and send it to Computer 1.

【0135】次に、ジョブ実行部2152は、図2に示す印
刷データ転送処理を実行する(ステップS1003)。
Next, the job execution unit 2152 executes the print data transfer process shown in FIG. 2 (step S1003).

【0136】具体的には、ジョブ実行部2152は、汎用バ
ッファ2162を介して、コンピュータ1より、印刷データ
の転送指示や転送すべき印刷データの格納領域が記述さ
れたCommand Block Agent ORB の格納領域が示された W
rite Block Request (図2に示す Command Agent ORB
読込み指示1002)を受け取ると、汎用生成部2172に、Wr
ite Response を生成させ、コンピュータ1に送信する。
それから、ジョブ実行部2152は、汎用生成部2172に、コ
ンピュータ1より Write Block Request に記述された格
納領域から Command Block Agent ORB を読み出すため
の Read BlockRequest を生成させてコンピュータ1に送
信し、その応答である Read Block Response を汎用バ
ッファ2162から受け取る。これにより、コンピュータ1
から Command Block Agent ORB を読み出す。
More specifically, the job execution unit 2152 receives, from the computer 1 via the general-purpose buffer 2162, a command data transfer instruction and a storage area of the Command Block Agent ORB in which the storage area of the print data to be transferred is described. W indicated
rite Block Request (Command Agent ORB shown in Fig. 2
Upon receiving the read instruction 1002), the general-purpose generation unit 2172
Generate an ite Response and send it to the computer 1.
Then, the job execution unit 2152 causes the general-purpose generation unit 2172 to generate a Read Block Request for reading the Command Block Agent ORB from the storage area described in the Write Block Request from the computer 1 and transmit the Read Block Request to the computer 1, and in response to the response, A certain Read Block Response is received from the general-purpose buffer 2162. This allows the computer 1
Read Command Block Agent ORB from

【0137】次に、ジョブ実行部2152は、コンピュータ
1より読み出した Command Block Agent ORB が示す格納
領域の印刷データを、コンピュータ1から取得すべく、
印刷データ用生成部2173に Read Block Request を生成
させる。そして、当該 ReadBlock Request に対する応
答としてコンピュータ1より Read Block Response を受
け取り、これを印刷データ用バッファ2163に格納するこ
とで、前記ORBが示す格納領域の印刷データを受信す
る。
Next, the job execution unit 2152
In order to obtain from the computer 1 the print data of the storage area indicated by the Command Block Agent ORB read from
The print data generation unit 2173 generates a Read Block Request. Then, a Read Block Response is received from the computer 1 as a response to the ReadBlock Request, and is stored in the print data buffer 2163, thereby receiving the print data in the storage area indicated by the ORB.

【0138】ジョブ実行部2152は、 Command Block Age
nt ORB が示す格納領域の印刷データの読み出し処理が
終了すると、汎用生成部2172に、前記 Command Block A
gentORB の処理が終了したことを示す Write Block Req
uest を生成させ、コンピュータ1に送信する。
The job execution unit 2152 executes the command
When the read processing of the print data in the storage area indicated by the nt ORB is completed, the command block A is
Write Block Req indicating that gentORB processing has been completed
Generate uest and send it to computer 1.

【0139】次に、ジョブ実行部2152は、図2に示すロ
グアウト処理を実行する(ステップS1004)。
Next, the job execution unit 2152 executes the logout process shown in FIG. 2 (step S1004).

【0140】具体的には、ジョブ実行部512は、コンピ
ュータ1から Logout ORB の格納領域を示した Write B
lock Request (図2に示す Logout ORB 読込み指示100
3)を、汎用バッファ2162を介して受け取る。そして、W
rite Block Request に示された格納領域から Logout O
RB を読み出すべく、汎用生成部2172に、 Read Block R
equest を生成させてコンピュータ1に送信し、その応
答である Read BlockResponse を汎用バッファ2162を介
して受信する。これにより、Logout ORB をコンピュー
タ1から読み出す。
More specifically, the job execution unit 512 sends a Write B indicating the storage area of the Logout ORB from the computer 1.
lock Request (Logout ORB read instruction 100 shown in Fig. 2)
3) is received via the general-purpose buffer 2162. And W
Logout O from the storage area indicated in the rite Block Request
To read the RB, the general-purpose generation unit 2172 sends the Read Block R
An equest is generated and transmitted to the computer 1, and a response, Read BlockResponse, is received via the general-purpose buffer 2162. Thus, the Logout ORB is read from the computer 1.

【0141】ジョブ実行部2152は、 Logout ORB の読み
出し処理が終了すると、汎用生成部2172に、 Logout OR
B の処理が終了したことを示す Write Block Request
を生成させて送信する。
Upon completion of the reading process of the Logout ORB, the job execution unit 2152 sends the Logout ORB to the general-purpose generation unit 2172.
Write Block Request indicating that processing of B has been completed
Is generated and transmitted.

【0142】図11は、図3に示す印刷データ転送再開
実行シーケンスでのプリンタ2の動作を説明するための
フロー図である。
FIG. 11 is a flowchart for explaining the operation of the printer 2 in the print data transfer restart execution sequence shown in FIG.

【0143】コンピュータ1のログイン中にバスリセッ
トが発生すると、実行状況監視部2151は、バスリセット
検出部214を介してこれを検出し(ステップS1101)、パ
ケット生成部217の各部と、印刷データ用バッファ2163
を除くパケット受信部216の各部を初期化する(ステッ
プS1102)。
When a bus reset occurs during the log-in of the computer 1, the execution status monitoring unit 2151 detects this via the bus reset detection unit 214 (step S1101), and connects each unit of the packet generation unit 217 to the print data. Buffer 2163
Each unit of the packet receiving unit 216 except for is initialized (step S1102).

【0144】なお、バスリセットにより、Link処理部21
2は、他のノードと協調してツリー識別や自己認識を行
い、ノードIDを取得する。また、図3に示すプリンタ2
の認識処理よりコンピュータ1から Read Quadlet Reque
st が送信された場合、パケット処理部213は、これを汎
用バッファ2162で受信し、当該 Request が要求するデ
ータを読み出す。そして、汎用生成部2172にて、当該デ
ータを含んだ Read Quadlet Response を生成し、コン
ピュータ1に送信する。これにより、プリンタ2のコンフ
ィギュレーションROMに記述されたGUIDなどの情報を、
コンピュータ1に通知する。
It should be noted that the link processing unit 21
2 performs tree identification and self-recognition in cooperation with other nodes to acquire node IDs. The printer 2 shown in FIG.
Read Quadlet Reque from Computer 1
When st is transmitted, the packet processing unit 213 receives this in the general-purpose buffer 2162 and reads out the data requested by the Request. Then, the general-purpose generation unit 2172 generates a Read Quadlet Response including the data, and transmits the response to the computer 1. As a result, information such as the GUID described in the configuration ROM of the printer 2 is
Notify computer 1.

【0145】次に、ジョブ実行部2152は、バスリセット
検出後、SBP-2で規定するリコネクト期間内(ステップS
1104)に、あるいは、リコネクト期間経過後、新たな印
刷データ転送のためのログイン要求を受け取る前(ステ
ップS1105)に、リコネクト要求されたか否かを判断する
(ステップS1103)。
Next, after the bus reset is detected, the job execution unit 2152 executes the reconnection period defined by SBP-2 (step S2).
1104) or after the reconnection period has elapsed and before receiving a login request for new print data transfer (step S1105), it is determined whether or not a reconnection request has been made (step S1103).

【0146】具体的には、ジョブ実行部2152は、汎用バ
ッファ2162に格納されたパケットを調べ、SBP-2で規定
するリコネクト期間内に、あるいは、リコネクト期間経
過後、新たな印刷データ転送のためのログイン要求(図
2に示す Login ORB読込み指示1001)を受け取る前に、
コンピュータ1より Reconnect ORB の格納領域が示され
た Write Block Request (図3に示す Reconnect ORB
読込み指示1004)を受信したか否かで判断する。
More specifically, the job execution unit 2152 examines the packet stored in the general-purpose buffer 2162, and executes a new print data transfer within the reconnect period specified by SBP-2 or after the reconnect period elapses. Before receiving the login request (Login ORB read instruction 1001 shown in FIG. 2),
Write Block Request indicating the storage area of Reconnect ORB from computer 1 (Reconnect ORB shown in Fig. 3
The determination is made based on whether or not the read instruction 1004) has been received.

【0147】リコネクト期間内に、あるいは、リコネク
ト期間経過後、新たな印刷データ転送のためのログイン
要求を受け取る前に、リコネクト要求されなかった場合
は、印刷データ用バッファ2163の初期化と、ジョブ処理
部215自身の初期化およびプリンタ本体部22に対する初
期化命令の送出(リコネクトタイムアウト処理)を行う
(ステップS1113、S1114)。それから、図10に示すフ
ローを実行する(ステップS1115)。
If no reconnection request is made within the reconnection period or after the reconnection period has elapsed and before a login request for new print data transfer is received, initialization of the print data buffer 2163 and job processing The unit 215 initializes itself and sends an initialization command to the printer main unit 22 (reconnect timeout process) (steps S1113 and S1114). Then, the flow shown in FIG. 10 is executed (step S1115).

【0148】なお、リコネクト期間内に、新たな印刷デ
ータ転送のためのログイン要求(図2に示す Login ORB
読込み指示1001)を受け取った場合、ジョブ実行部2152
は、汎用生成部2172に、コンピュータ1のログインを許
可しない旨示した Write Response を生成させて、プリ
ンタ2に送信する。
In the reconnect period, a login request for new print data transfer (Login ORB shown in FIG. 2)
Upon receiving the read instruction 1001), the job execution unit 2152
Causes the general-purpose generation unit 2172 to generate a Write Response indicating that login of the computer 1 is not permitted, and transmits the Write Response to the printer 2.

【0149】一方、リコネクト期間内に、あるいは、リ
コネクト期間経過後、新たな印刷データ転送のためのロ
グイン要求を受け取る前に、コンピュータ1よりリコネ
クト要求された場合、ジョブ実行部2152は、図3に示す
リコネクト処理を実行することで、リコネクトを要求し
たノードがコンピュータ1であることを認識する(ステ
ップS1106)。
On the other hand, if a reconnection request is received from the computer 1 within the reconnect period or after the reconnect period and before receiving a login request for new print data transfer, the job execution unit 2152 returns to FIG. By executing the reconnect process shown, it is recognized that the node requesting the reconnect is the computer 1 (step S1106).

【0150】具体的には、ジョブ実行部512は、コンピ
ュータ1より Reconnect ORB の格納領域が示された Wri
te Block Request (図3に示す Reconnect ORB 読込み
指示1004)を受け取ると、汎用生成部2172に、Write Re
sponse を生成させ、コンピュータ1に送信する。それか
ら、ジョブ実行部2152は、汎用生成部2172に、WriteBlo
ck Request に記述された格納領域からReconnect ORB
をコンピュータ1より読み出すための Read Block Reque
st を生成させてコンピュータ1に送信し、その応答であ
る Read Block Response を汎用バッファ2162から受け
取る。これにより、コンピュータ1から Reconnect ORB
を読み出す。
More specifically, the job execution unit 512 sends the Wri in which the storage area of the Reconnect ORB is indicated by the computer 1.
Upon receiving the te Block Request (Reconnect ORB reading instruction 1004 shown in FIG. 3), the general-purpose generation unit 2172 writes the Write Re
Generate sponse and send it to computer 1. Then, the job execution unit 2152 writes the WriteBlo
Reconnect ORB from the storage area described in ck Request
Block Reque for reading data from computer 1
st is generated and transmitted to the computer 1, and the response, Read Block Response, is received from the general-purpose buffer 2162. As a result, the Reconnect ORB
Is read.

【0151】次に、ジョブ実行部2152は、 Reconnect O
RB の読み出しが終了すると、汎用生成部2172に Read Q
uadlet Request を生成させてコンピュータ1に送信し、
その応答である Read Quadlet Response を汎用バッフ
ァ2162から受け取る。これにより、コンピュータ1のコ
ンフィギュレーションROMの内容を読み出し、コンピュ
ータ1のGUIDなどを取得する。これにより、ジョブ実行
部2152は、リコネクトを要求したノードが、バスリセッ
ト前にログインしていたコンピュータ1であることを識
別する。
Next, the job execution unit 2152
When the reading of the RB is completed, the general-purpose
Generate uadlet Request and send it to Computer 1,
The response, Read Quadlet Response, is received from the general-purpose buffer 2162. Thereby, the content of the configuration ROM of the computer 1 is read, and the GUID of the computer 1 and the like are obtained. As a result, the job execution unit 2152 identifies that the node that has requested the reconnection is the computer 1 that has logged in before the bus reset.

【0152】その後、ジョブ実行部2152は、汎用生成部
2172に Reconnect ORB の処理が終了したことを示すデ
ータを含んだ Write Block Request を生成させ、コン
ピュータ1に送信する。
Thereafter, the job execution unit 2152
2172 causes the computer 1 to generate a Write Block Request including data indicating that the processing of the Reconnect ORB has been completed, and sends it to the computer 1.

【0153】次に、ジョブ実行部2152は、図3に示す印
刷データ転送再開処理を実行する(ステップS1107〜S11
11)。
Next, the job execution section 2152 executes the print data transfer restart processing shown in FIG. 3 (steps S1107 to S11).
11).

【0154】具体的には、ジョブ実行部2152は、汎用バ
ッファ2162を介して、コンピュータ1より、印刷データ
の転送指示や転送すべき印刷データの格納領域が記述さ
れたCommand Block Agent ORB の格納領域が示された W
rite Block Request (図3に示す Command Block Agen
t ORB 読込み指示1005)を受け取ると、汎用生成部2172
に、Write Response を生成させ、コンピュータ1に送信
する。それから、ジョブ実行部2152は、汎用生成部2172
に、コンピュータ1より Write Block Request に記述さ
れた格納領域から Command Block Agent ORB を読み出
すための ReadBlock Request を生成させてコンピュー
タ1に送信し、その応答である Read Block Responseを
汎用バッファ2162から受け取る。これにより、印刷デー
タ転送のための Command Block Agent ORB をコンピュ
ータ1から読み出す(ステップS1107)。
More specifically, the job execution unit 2152 receives, via the general-purpose buffer 2162, the storage area of the Command Block Agent ORB in which the transfer instruction of the print data and the storage area of the print data to be transferred are described from the computer 1. W indicated
rite Block Request (Command Block Agen shown in Fig. 3
t When the ORB read instruction 1005) is received, the general-purpose generation unit 2172
Then, a Write Response is generated and transmitted to the computer 1. Then, the job execution unit 2152
Then, the computer 1 generates a ReadBlock Request for reading the Command Block Agent ORB from the storage area described in the Write Block Request, transmits the ReadBlock Request to the computer 1, and receives a Read Block Response as a response from the general-purpose buffer 2162. As a result, the Command Block Agent ORB for transferring the print data is read from the computer 1 (step S1107).

【0155】次に、ジョブ実行部2152は、実行状況監視
部2151に印刷データ転送のための Command Block Agent
ORB が保持されていれば、当該ORBを取得し、ステップ
S907で取得した Command Block Agent ORB と比較する
(ステップS1108)。
Next, the job execution unit 2152 sends a command block agent for transferring print data to the execution status monitoring unit 2151.
If the ORB is retained, retrieve the ORB and
A comparison is made with the Command Block Agent ORB acquired in S907 (step S1108).

【0156】上述したように、実行状況監視部2151は、
コンピュータ1から読み出した印刷データ転送のための
Command Block Agent ORB について、印刷データ用生成
部2172が当該ORBにしたがい生成した Read Block Reque
st のパケット数と、当該 Read Block Request に対す
る応答としてコンピュータ1より受け取った Read Block
Response のパケット数を、当該ORBの実行が完了する
まで計数する。したがって、バスリセットにより当該OR
Bの実行が中断された場合、実行状況監視部2151には、
当該ORBについて、バスリセットされるまでに印刷デー
タ用生成部2172が当該ORBにしたがい生成した Read Blo
ck Request のパケット数と、当該 Read Block Request
に対する応答としてコンピュータ1より受け取った Rea
d Block Response のパケット数が保持されることにな
る。
As described above, the execution status monitoring unit 2151
For transferring print data read from computer 1
For the Command Block Agent ORB, the Read Block Requeue generated by the print data generator 2172 according to the ORB
The number of packets of st and the Read Block received from Computer 1 in response to the Read Block Request
The number of Response packets is counted until the execution of the ORB is completed. Therefore, the OR
If the execution of B is interrupted, the execution status monitoring unit 2151
For the ORB, the read data generated by the print data generation unit 2172 according to the ORB until the bus reset is performed.
The number of ck Request packets and the corresponding Read Block Request
Rea received from computer 1 in response to
The number of d Block Response packets will be retained.

【0157】ステップS1108での比較の結果、実行状況
監視部2151に保持されている Command Block Agent ORB
が示す印刷データの格納領域と、ステップS907で取得
した Command Block Agent ORB が示す印刷データの格
納領域が同じ場合、ジョブ実行部2152は、バスリセット
前後における印刷データの継続性を確保するために以下
の処理を行う。
As a result of the comparison in step S1108, the Command Block Agent ORB stored in the execution status monitoring unit 2151
If the storage area of the print data indicated by (1) and the storage area of the print data indicated by the Command Block Agent ORB acquired in step S907 are the same, the job execution unit 2152 performs the following to ensure the continuity of the print data before and after the bus reset. Is performed.

【0158】すなわち、ジョブ実行部2152は、ステップ
S1107で取得した Command Block Agent ORB が示す印刷
データの格納領域(実際には先頭アドレスおよび転送デ
ータ量により特定される)と、実行状況監視部2151に保
持されている Read Block Request のパケット数あるい
は Read Block Response のパケット数から、当該ORBに
ついて、取得済みの印刷データ(バスリセット前に既に
読み出した印刷データ)を除いた、未取得分の印刷デー
タの格納領域を特定する。
That is, the job execution unit 2152
The storage area of the print data indicated by the Command Block Agent ORB acquired in S1107 (actually specified by the start address and the amount of transfer data) and the number of packets of Read Block Request held by the execution status monitoring unit 2151 or the Read From the number of packets in the Block Response, the print data storage area for the unacquired print data is specified for the ORB excluding the acquired print data (the print data already read before the bus reset).

【0159】そして、ジョブ実行部2152は、未取得分の
印刷データのみをコンピュータ1から取得すべく、印刷
データ用生成部2173に、前記未取得分の印刷データを読
み出すの必要な数分 read block request を生成させ、
コンピュータ1に送信する。そして、当該 Read Block R
equest に対する応答としてコンピュータ1より ReadBlo
ck Response を受け取り、これを印刷データ用バッファ
2163に格納することで、未取得分の印刷データのみを受
信する(ステップS1109)。
Then, the job execution unit 2152 instructs the print data generation unit 2173 to acquire only the unacquired print data from the computer 1 by the number of read blocks required to read the unacquired print data. generate a request,
Send to computer 1. Then, the Read Block R
ReadBlo from computer 1 in response to equest
ck Response is received and this is the print data buffer.
By storing it in 2163, only the unacquired print data is received (step S1109).

【0160】なお、実行状況監視部2151は、印刷データ
転送のための Command Block AgentORB の実行が完了す
ると、計測内容をクリアする。そして、新たに印刷デー
タ転送のための Command Block Agent ORB が実行され
ると計測を開始する。
When the execution of the Command Block AgentORB for transferring print data is completed, the execution status monitoring unit 2151 clears the measurement contents. Then, when a new Command Block Agent ORB for transferring print data is executed, measurement is started.

【0161】一方、実行状況監視部2151に印刷データ転
送のための Command Block Agent ORB が保持されてい
ない場合、あるいは、ステップS1108での比較の結果、
実行状況監視部2151に保持されている Command Block A
gent ORB が示す印刷データの格納領域とステップS1107
で取得した Command Block Agent ORB が示す印刷デー
タの格納領域が異なる場合、ジョブ実行部2152は、ステ
ップS1107で取得した Command Block Agent ORB が示す
格納領域の印刷データをコンピュータ1から取得すべ
く、印刷データ用生成部2173に Read Block Request を
生成させ、プリンタ2に送信する。そして、当該 Read B
lock Request に対する応答としてコンピュータ1より R
ead Block Response を受け取り、これを印刷データ用
バッファ2163に格納することで、前記ORBが示す格納領
域の印刷データを受信する(ステップS1110)。
On the other hand, if the execution status monitoring unit 2151 does not hold a Command Block Agent ORB for transferring print data, or if the result of the comparison in step S1108 is
Command Block A held in the execution status monitoring unit 2151
Storage area for print data indicated by gent ORB and step S1107
If the storage area of the print data indicated by the Command Block Agent ORB acquired in step S1107 is different, the job execution unit 2152 obtains the print data of the storage area indicated by the Command Block Agent ORB acquired in step S1107 from the computer 1, The application generation unit 2173 generates a Read Block Request and sends it to the printer 2. And the Read B
R from computer 1 in response to lock Request
By receiving the ead Block Response and storing it in the print data buffer 2163, the print data in the storage area indicated by the ORB is received (step S1110).

【0162】次に、ジョブ実行部2152は、ステップS110
9あるいはステップS1110による印刷データの読み出し処
理が終了すると、汎用生成部2172に、ステップS1107で
取得した Command Block Agent ORB の処理が終了した
ことを示す Write Block Request 生成させ、コンピュ
ータ1に送信する(ステップS1111)。
Next, the job execution unit 2152 determines in step S110
9 or when the print data reading process in step S1110 is completed, the general-purpose generation unit 2172 generates a Write Block Request indicating that the processing of the Command Block Agent ORB acquired in step S1107 is completed, and transmits it to the computer 1 (step S1111).

【0163】次に、ジョブ実行部2152は、図3に示すロ
グアウト処理を実行する(ステップS1112)。
Next, the job execution unit 2152 executes the logout process shown in FIG. 3 (step S1112).

【0164】具体的には、ジョブ実行部2152は、コンピ
ュータ1から Logout ORB の格納領域を示した Write B
lock Request (図3に示す Logout ORB 読込み指示100
6)を、汎用バッファ2162を介して受け取る。そして、
Write Block Request に示された格納領域から Logout
ORB を読み出すべく、汎用生成部2172に、 Read Block
Request を生成させてコンピュータ1に送信し、その応
答である Read Block Response を汎用バッファ2162を
介して受信する。これにより、 Logout ORBをコンピュ
ータ1から読み出す。
More specifically, the job execution unit 2152 sends the Write B indicating the storage area of the Logout ORB from the computer 1.
lock Request (Logout ORB read instruction 100 shown in Fig. 3)
6) is received via the general-purpose buffer 2162. And
Logout from the storage area indicated in the Write Block Request
To read the ORB, the general-purpose generation unit 2172 sends a Read Block
A request is generated and transmitted to the computer 1, and a response, Read Block Response, is received via the general-purpose buffer 2162. Thus, the Logout ORB is read from the computer 1.

【0165】ジョブ実行部2512は、 Logout ORB の読み
出し処理が終了すると、汎用生成部2172に、 Logout OR
B の処理が終了したことを示すデータを含んだ Write B
lockRequest を生成させ、コンピュータ1に送信する。
Upon completion of the reading process of the Logout ORB, the job execution unit 2512 sends the logout ORB to the general-purpose generation unit 2172.
Write B containing data indicating that processing of B has been completed
Generate lockRequest and send it to Computer1.

【0166】以上、本発明の一実施形態について説明し
た。
As described above, one embodiment of the present invention has been described.

【0167】上述したように、従来は、バスリセットに
より中断された印刷データの転送を再開するために、リ
コネクト期間内にコンピュータがプリンタに対してリコ
ネクト要求(具体的には、Reconnect ORBの格納領域が
記述された Write Block Requestの通知)をすることを
条件としていた。リコネクト期間内にリコネクト要求が
なかった場合、プリンタは、リコネクトタイムアウト処
理を実行して排紙動作やプリンタ各部の初期化を行い、
印刷動作を終了していた。
As described above, conventionally, in order to resume the transfer of the print data interrupted by the bus reset, the computer sends a reconnect request (specifically, the storage area of the Reconnect ORB) to the printer within the reconnect period. (Notification of Write Block Request in which is described). If there is no reconnect request within the reconnect period, the printer performs a reconnect timeout process to perform a paper ejection operation and initialization of each part of the printer,
The printing operation has been completed.

【0168】しかしながら、本実施形態のように、コン
ピュータ1に省電力化のための電源管理技術が適用され
ている場合、印刷データ転送のためコンピュータ1がプ
リンタ2へログインしている最中に、コンピュータ1の入
力装置126に所定期間入力がなかったためにコンピュー
タ1の電源がオフになって休止状態に移行して、バスリ
セットが発生してしまうこともあり得る。この場合、プ
リンタ2は、コンピュータ1からリコネクト要求されるの
を待つこととなるが、休止状態にあるコンピュータ1
は、入力装置126に何らかの入力がされない限り復帰し
ない。このため、復帰後、プリンタ2にリコネクト要求
を通知したときには、すでにリコネクト期間を経過して
いる可能性がある。
However, when the power management technique for power saving is applied to the computer 1 as in the present embodiment, while the computer 1 is logging in to the printer 2 for transferring the print data, Since there has been no input to the input device 126 of the computer 1 for a predetermined period, the power of the computer 1 is turned off and the computer 1 shifts to a hibernation state, so that a bus reset may occur. In this case, the printer 2 waits for a request for reconnection from the computer 1, but the computer 1 is in a suspended state.
Does not return unless some input is made to the input device 126. Therefore, when the printer 2 is notified of the reconnection request after the return, there is a possibility that the reconnection period has already passed.

【0169】この点、本実施形態のプリンタ2は、リコ
ネクト期間が経過した後であっても、新たな印刷データ
転送のためのログイン要求がされるまで、リコネクトタ
イムアウト処理の実行を保留している。したがって、コ
ンピュータ1の休止状態への移行によりバスリセットが
発生して、コンピュータ1からプリンタ2への印刷データ
転送が中断された場合、リコネクト期間が経過した後で
も、プリンタ2に新たな印刷データ転送のためのログイ
ン要求がされる前であれば、コンピュータ1は、休止状
態から復帰後、プリンタ2にリコネクトすることが可能
となる。
In this regard, the printer 2 of the present embodiment suspends execution of the reconnect timeout process until a login request for a new print data transfer is issued even after the reconnect period has elapsed. . Therefore, if the bus reset occurs due to the transition of the computer 1 to the hibernation state and the transfer of the print data from the computer 1 to the printer 2 is interrupted, the transfer of the new print data to the printer 2 is performed even after the reconnect period has elapsed. Before the log-in request is made, the computer 1 can be connected to the printer 2 after returning from the hibernation state.

【0170】このように、本実施形態によれば、バスリ
セットにより中断された印刷データの転送を再開させる
ことができる確率が高まる。
As described above, according to the present embodiment, the probability that the transfer of the print data interrupted by the bus reset can be restarted is increased.

【0171】また、本実施形態のプリンタ2は、バスリ
セットにより Command Block AgentORB による印刷デー
タの転送処理が中断された場合、バスリセット前におけ
る当該ORBの処理にて未取得分の印刷データのみをコン
ピュータ1から取得するようにしている。
When the transfer of the print data by the Command Block Agent ORB is interrupted by a bus reset, the printer 2 of the present embodiment transmits only the unacquired print data by the ORB before the bus reset to the computer. I'm trying to get from one.

【0172】具体的には、バスリセットにより実行が中
断された Command Block Agent ORBを通知したコンピュ
ータ1より、SBP-2に定義されているリコネクト処理の要
求を受け付け、さらに、前記中断された Command Block
Agent ORB と同じ Command Block Agent ORB を受け付
けた場合、ジョブ実行部2152は、実行状況監視部2151に
より計測された、当該ORBの実行が中断された際の Read
Block Request の送信回数あるいは Read Block Respo
nse の受信回数により、当該 ORB に記述された格納領
域のデータのうち、バスリセット前に取得したデータを
除く未取得分のデータの格納領域を特定する。そして、
印刷データ用生成部2173に対し、ReadBlock Request
を、前記特定した未取得分のデータを読み出すのに必要
な数分生成させ、コンピュータ1に送信する。
More specifically, a request for a reconnect process defined in SBP-2 is received from the computer 1 which has notified the Command Block Agent ORB whose execution has been interrupted due to the bus reset, and
If the same Command Block Agent ORB as the Agent ORB is received, the job execution unit 2152 reads the execution status of the ORB measured by the execution status monitoring unit 2151 when the execution of the ORB is interrupted.
Block Request transmission count or Read Block Respo
Based on the number of receptions of nse, the storage area of the unacquired data excluding the data acquired before the bus reset is specified from the data of the storage area described in the ORB. And
A ReadBlock Request is sent to the print data generation unit 2173.
Are generated for the number required to read the specified unacquired data, and transmitted to the computer 1.

【0173】また、受信セレクタ2161は、前記 Read Bl
ock Request に応答して、コンピュータ1が送信する Re
ad Block Response に格納される印刷データを、印刷デ
ータ用バッファ2163に格納させる。ジョブ実行部2152
は、バスリセットされた場合でも、直ちに印刷データ用
バッファ2163を初期化するのではなく、バスリセット完
了後SBP-2に定義されているリコネクト期間内に、コン
ピュータ1よりリコネクトされなかった場合に、初期化
するようにしている。
Further, the reception selector 2161 is connected to the Read Bl
In response to the ock Request, Computer 1 sends a Re
The print data stored in the ad Block Response is stored in the print data buffer 2163. Job execution unit 2152
Even if the bus is reset, instead of immediately resetting the print data buffer 2163, if the computer 1 does not reconnect within the reconnect period defined in SBP-2 after the completion of the bus reset, I try to initialize.

【0174】このようにすることで、プリンタ2は、印
刷データ用バッファ2163に格納する印刷データについ
て、バスリセットにより受信が中断された場合でも、同
じ印刷データを重複させることなく、印刷データの継続
性を確保することができる。したがって、たとえば、イ
ンクジェットプリンタなどのシリアルプリンタでは、1
ライン分(印字ヘッドを1回走査できる分)の印刷デー
タを受信すると、印刷を開始してしまうものでも、バス
リセット後に、同じ印刷データが重複して印刷されるこ
とがなくなる。
By doing so, the printer 2 can continue the print data stored in the print data buffer 2163 without duplicating the same print data even when the reception is interrupted by a bus reset. Nature can be secured. Therefore, for example, in a serial printer such as an ink jet printer, 1
When the print data for the line (the print head can be scanned once) is received, the same print data will not be duplicated after the bus reset even if the printing is started.

【0175】なお、印刷データを格納する Read Block
Response 以外のパケット(たとえば、Logout ORB や C
ommand Block Agent ORB の格納領域を示した Write Bl
ockRequest など)は、受信セレクタ2161を介して汎用
バッファ2162に格納される。ここで、ジョブ実行部2152
は、バスリセットされた場合、汎用バッファ2162につい
ては直ちに初期化するようにしている。このため、たと
えば、Logout ORBや Command Block Agent ORB の格納
領域を示した Write Block Request の受信中にバスリ
セットされた場合に、バスリセットにより受信が中断さ
れた前記 Write Block Request の断片が汎用バッファ2
162に残存していることにより、バスリセット後に、プ
リンタ2が誤った動作をしてしまうような事態が発生す
るのを低減することができる。
A Read Block for storing print data
Packets other than Response (for example, Logout ORB or C
Write Bl showing storage area of ommand Block Agent ORB
ockRequest) is stored in the general-purpose buffer 2162 via the reception selector 2161. Here, the job execution unit 2152
When the bus is reset, the general-purpose buffer 2162 is immediately initialized. Therefore, for example, when the bus is reset during the reception of the Write Block Request indicating the storage area of the Logout ORB or the Command Block Agent ORB, the fragment of the Write Block Request interrupted by the bus reset is transferred to the general-purpose buffer 2.
By remaining in the 162, occurrence of a situation in which the printer 2 performs an erroneous operation after the bus reset can be reduced.

【0176】さらに、本実施形態では、印刷データ用バ
ッファ2163のサイズを、プリンタ2がコンピュータ1か
ら印刷データを取得するために生成する Read Block Re
quest に記述される、1回のスプリットトランザクショ
ンで転送可能な所定データ量(たとえば2Kバイト)より
大きな値(たとえば4Kバイト)に設定している。このた
め、前記Read Block Request に対する応答として、コ
ンピュータ1が送信するRead Block Response の印刷デ
ータは、一度に印刷データ用バッファ2163に格納され
る。したがって、実行状況監視部2151は、Command Bloc
k Agent ORB によるたジョブ(印刷データ転送/転送再
開処理)の実行状況を、Read Block Request の送信回
数あるいは Read Block Response の受信回数を計測す
ることで実現でき、管理が容易となる。
Further, in the present embodiment, the size of the print data buffer 2163 is determined by the Read Block Resize generated by the printer 2 to obtain the print data from the computer 1.
The value is set to a value (for example, 4 Kbytes) larger than a predetermined data amount (for example, 2 Kbytes) that can be transferred in one split transaction described in quest. Therefore, the print data of the Read Block Response transmitted by the computer 1 as a response to the Read Block Request is stored in the print data buffer 2163 at a time. Therefore, the execution status monitoring unit 2151 uses Command Bloc
k The execution status of the job (print data transfer / transfer resumption processing) by the Agent ORB can be realized by measuring the number of times Read Block Request is sent or the number of times Read Block Response is received, and management becomes easy.

【0177】なお、本実施形態では、 Command Block A
gent ORB の実行状況を監視するために、 Command Bloc
k Agent ORB に記述された格納領域の印刷データを読み
出すための Read Block Request の送信回数、および
当該Requestの返答である Read Block Response の受信
回数の両方を計測しているが、いずれか一方を計測する
ものであってもよい。あるいは、前記 Read Block Resp
onse に含まれる印刷データの合計バイト数を計測する
ことで、 Command Block Agent ORB の実行状況を監視
するようにしてもよい。これは、たとえば、印刷データ
用バッファ2163に入力したデータのバイト数を計測する
ことで実現できる。
In this embodiment, Command Block A
Command Bloc to monitor the execution status of the gent ORB
k Number of transmissions of Read Block Request for reading print data in the storage area described in Agent ORB, and
Although both the number of receptions of the Read Block Response, which is the response to the Request, are measured, one of them may be measured. Alternatively, the Read Block Resp
The execution status of the Command Block Agent ORB may be monitored by measuring the total number of bytes of print data included in onse. This can be realized, for example, by measuring the number of bytes of data input to the print data buffer 2163.

【0178】また、本実施形態では、IEEE1394に準拠し
たシリアルインターフェースを介して、SBP-2に準拠し
たデータ転送プロトコルにしたがい相手装置とデータ通
信を行うものについて説明したが、本発明はこれに限定
されるものではない。たとえば、DPP(Direct Printer
Protocol)などのその他のデータ転送プロトコルにおい
ても、所定のイベントによりデータ転送が中断される可
能性のあるものについて広く適用することができる。
Further, in the present embodiment, description has been made of a device which performs data communication with a partner device according to a data transfer protocol conforming to SBP-2 via a serial interface conforming to IEEE1394, but the present invention is not limited to this. It is not something to be done. For example, DPP (Direct Printer
Other data transfer protocols such as Protocol) can be widely applied to those in which data transfer may be interrupted by a predetermined event.

【0179】さらに、本発明のデータ通信装置は、プリ
ンタのみに適用されるものではなく、スキャナやデジタ
ルビデオカメラなどの様々な接続機器に適用可能であ
る。
Further, the data communication apparatus of the present invention is not limited to being applied only to a printer, but is applicable to various connected devices such as a scanner and a digital video camera.

【0180】[0180]

【発明の効果】以上説明したように、本発明によれば、
バスリセットにより中断されたデータ転送を再開させる
ことができる確率が高まる。
As described above, according to the present invention,
The probability that the data transfer interrupted by the bus reset can be restarted is increased.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施形態が適用されたプリンタ2を
含むシステムの概略構成図である。
FIG. 1 is a schematic configuration diagram of a system including a printer 2 to which an embodiment of the present invention is applied.

【図2】図1に示すコンピュータ1およびプリンタ2間で
行われる印刷実行シーケンスを示した図である。
FIG. 2 is a diagram showing a print execution sequence performed between a computer 1 and a printer 2 shown in FIG.

【図3】図1に示すコンピュータ1およびプリンタ2間で
行われる印刷データ転送再開実行シーケンスを示した図
である。
FIG. 3 is a diagram showing a print data transfer restart execution sequence performed between the computer 1 and the printer 2 shown in FIG. 1;

【図4】図1に示すコンピュータ1の概略構成図であ
る。
FIG. 4 is a schematic configuration diagram of a computer 1 shown in FIG.

【図5】図4に示すコンピュータ本体部12のハードウエ
ア構成例を示した図である。
FIG. 5 is a diagram showing an example of a hardware configuration of a computer main unit 12 shown in FIG.

【図6】図1に示すプリンタ2の概略構成図である。FIG. 6 is a schematic configuration diagram of the printer 2 shown in FIG.

【図7】図6に示すプリンタ本体22のハードウエア構成
例を示した図である。
FIG. 7 is a diagram showing an example of a hardware configuration of a printer main body 22 shown in FIG.

【図8】図2に示す印刷実行シーケンスでのコンピュー
タ1の動作を説明するためのフロー図である。
8 is a flowchart for explaining the operation of the computer 1 in the print execution sequence shown in FIG.

【図9】図3に示す印刷データ転送再開実行シーケンス
でのコンピュータ1の動作を説明するためのフロー図で
ある。
FIG. 9 is a flowchart for explaining the operation of the computer 1 in the print data transfer restart execution sequence shown in FIG. 3;

【図10】図2に示す印刷実行シーケンスでのプリンタ
2の動作を説明するためのフロー図である。
FIG. 10 shows a printer in the print execution sequence shown in FIG. 2;
FIG. 6 is a flowchart for explaining the operation 2;

【図11】図3に示す印刷データ転送再開実行シーケン
スでのプリンタ2の動作を説明するためのフロー図であ
る。
11 is a flowchart for explaining the operation of the printer 2 in the print data transfer restart execution sequence shown in FIG.

【符号の説明】[Explanation of symbols]

1…コンピュータ 2…プリンタ 3…スキャナ 4…デジタルビデオカメラ 11,21…データ通信部 12…コンピュータ本体部 22…プリンタ本体部 111,211…PHY処理部 112,212…Link処理部 113,213…パケット処理部 114,214…バスリセット検出部 115,215…ジョブ処理部 116,216…パケット受信部 117,217…パケット生成部 121,221…CPU 122,222…メモリ 123…外部記憶装置 124…読取装置 125…記憶媒体 126…入力装置 127…表示装置 128…インターフェース 223…I/F回路 224…プリンタエンジン 2161…受信セレクタ 2162…汎用バッファ 2163…印刷データ用バッファ 2171…送信セレクタ 2172…汎用生成部 2173…印刷データ用生成部 2151…実行状況監視部 2152…ジョブ実行部 1 Computer 2 Printer 3 Scanner 4 Digital video camera 11, 21 Data communication unit 12 Computer main unit 22 Printer main unit 111, 211 PHY processing unit 112, 212 Link processing unit 113, 213 Packet processing unit 114, 214 Bus reset Detecting units 115, 215 Job processing units 116, 216 Packet receiving units 117, 217 Packet generating units 121, 221 CPU 122, 222 Memory 123 External storage device 124 Reading device 125 Storage medium 126 Input device 127 Display device 128 Interface 223 I / F circuit 224 ... Printer engine 2161 ... Receive selector 2162 ... General purpose buffer 2163 ... Print data buffer 2171 ... Transmit selector 2172 ... General purpose generation unit 2173 ... Print data generation unit 2151 ... Execution status monitoring unit 2152 ... Job execution unit

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】IEEE(The Institute of Electrical and
Electronics Engineers, Inc.)1394に準拠したシリア
ルインターフェースを介して、SBP-2(Seral Bus Proto
col 2)に準拠したデータ転送プロトコルにしたがい、
相手装置と自装置に接続された接続機器との間のデータ
転送を行うデータ通信装置であって、 IEEE1394で定義されているバスリセットにより実行中の
データ転送が中断された場合に、SBP-2で規定されてい
るリコネクト期間の経過後であっても、当該バスリセッ
トにより実行が中断されたデータ転送と異なるデータ転
送の処理が要求されない限り、当該実行が中断されたデ
ータ転送の処理を要求した相手装置よりの、SBP-2で規
定されているリコネクト要求を認めることを特徴とする
データ通信装置。
[Claim 1] IEEE (The Institute of Electrical and
Electronics Engineers, Inc.) SBP-2 (Seral Bus Proto) via serial interface compliant with 1394
According to the data transfer protocol according to col 2),
A data communication device that performs data transfer between a partner device and a connected device connected to its own device. If a data transfer being executed is interrupted by a bus reset defined by IEEE1394, the SBP-2 Even after the elapse of the reconnect period specified in, a request for a data transfer process whose execution has been interrupted has been requested unless a data transfer process different from the data transfer interrupted by the bus reset is required. A data communication device characterized by recognizing a reconnect request specified by SBP-2 from a partner device.
【請求項2】請求項1記載のデータ通信装置であって、 前記バスリセットにより実行中のデータ転送が中断され
た場合において、前記リコネクト期間の経過後、当該実
行が中断されたデータ転送の処理を要求した相手装置よ
りリコネクト要求を受け取る前に、当該実行が中断され
たデータ転送と異なるデータ転送の処理が要求されたと
きは、前記接続機器にリセット命令を出力することを特
徴とするデータ通信装置。
2. The data communication device according to claim 1, wherein, when the data transfer being executed is interrupted by the bus reset, after the reconnect period elapses, the data transfer is interrupted. Before receiving a reconnect request from a partner device that has requested the data transfer, when a data transfer process different from the interrupted data transfer is requested, outputting a reset command to the connected device. apparatus.
【請求項3】請求項1または2記載のデータ通信装置で
あって、 相手装置より受け取った、前記接続機器に転送すべきデ
ータを一時格納するバッファを有し、 前記バスリセットにより実行中のデータ転送が中断され
た場合において、前記リコネクト期間の経過後、当該実
行が中断されたデータ転送の処理を要求した相手装置よ
りリコネクト要求を受け取る前に、当該実行が中断され
たデータ転送と異なるデータ転送の処理が要求されたと
きは、前記バッファに格納されているデータをクリアす
ることを特徴とするデータ通信装置。
3. The data communication device according to claim 1, further comprising a buffer for temporarily storing data to be transferred to said connected device, received from a partner device, and said data being executed by said bus reset. In the case where the transfer is interrupted, after the elapse of the reconnect period, before receiving a reconnect request from the partner device that has requested the processing of the data transfer whose execution has been interrupted, a data transfer different from the data transfer whose execution has been interrupted. A data communication device that clears the data stored in the buffer when the processing of (1) is requested.
【請求項4】請求項1、2または3記載のデータ通信装
置であって、 前記バスリセットにより実行中のデータ転送が中断され
た場合において、前記リコネクト期間の経過前に、ある
いは、前記リコネクト期間の経過後、当該実行が中断さ
れたデータ転送と異なるデータ転送の処理が要求される
前に、当該実行が中断されたデータ転送の処理を要求し
た相手装置よりリコネクト要求を受け取ったときは、当
該実行が中断されたデータ転送で転送すべきデータのう
ち未取得分のデータのみを転送するように、当該相手装
置に要求することを特徴とするデータ通信装置。
4. The data communication device according to claim 1, wherein when the data transfer being executed is interrupted by the bus reset, before the elapse of the reconnect period or the reconnect period. If a reconnect request is received from the partner device that has requested the processing of the data transfer whose execution has been interrupted before the data transfer processing different from the data transfer whose execution has been interrupted has been requested after the elapse of A data communication device for requesting a partner device to transfer only unacquired data among data to be transferred in data transfer whose execution has been interrupted.
【請求項5】請求項1、2、3または4記載のデータ通
信装置であって、 前記接続機器はプリンタであり、 前記データ転送で転送すべきデータは印刷データである
ことを特徴とするデータ通信装置。
5. The data communication device according to claim 1, wherein the connection device is a printer, and the data to be transferred in the data transfer is print data. Communication device.
JP2000070621A 2000-03-14 2000-03-14 Data communication unit Pending JP2001257703A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000070621A JP2001257703A (en) 2000-03-14 2000-03-14 Data communication unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000070621A JP2001257703A (en) 2000-03-14 2000-03-14 Data communication unit

Publications (1)

Publication Number Publication Date
JP2001257703A true JP2001257703A (en) 2001-09-21

Family

ID=18589329

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000070621A Pending JP2001257703A (en) 2000-03-14 2000-03-14 Data communication unit

Country Status (1)

Country Link
JP (1) JP2001257703A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7366805B2 (en) 2003-10-06 2008-04-29 Seiko Epson Corporation Data transfer control system, electronic instrument, program, and data transfer control method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7366805B2 (en) 2003-10-06 2008-04-29 Seiko Epson Corporation Data transfer control system, electronic instrument, program, and data transfer control method

Similar Documents

Publication Publication Date Title
US9892081B2 (en) Split transaction protocol for a bus system
JP3927647B2 (en) Information processing apparatus, information processing method, and information processing system
US20110320706A1 (en) Storage apparatus and method for controlling the same
JP2003044184A (en) Data processor and method for controlling power
JP2002300229A (en) Device and method for controlling usb communication and usb communication system
JP2001119415A (en) Data transfer controller and electronic apparatus
JP3584789B2 (en) Data transfer control device and electronic equipment
JP3387466B2 (en) Data communication device
JPH10229427A (en) Information processing device and method
JP2000184000A (en) State machine driving type transport protocol interface
JP3599048B2 (en) Data transfer control system, electronic device, program, and data transfer control method
JP3598923B2 (en) Data transfer control device, information storage medium, and electronic device
JP2001045031A (en) Device to be logged in, log-in device, inter-device communication system provided with them, log-in control method and recording medium
JP2001257703A (en) Data communication unit
McDowell et al. USB explained
JP2000341316A (en) Data communication system
JPWO2005029778A1 (en) Communication control circuit and communication control method
US20040057447A1 (en) Communication system
US20030212850A1 (en) Log-in device and logged-in device
JP3598924B2 (en) Data transfer control device, information storage medium, and electronic device
JPH11110160A (en) Printing controller and printing control method
JP2003051824A (en) Communication method, communication system, program and storage medium
JP3598922B2 (en) Data transfer control device, information storage medium, and electronic device
JP3951113B2 (en) Control device and method for inter-device data communication
JP3797075B2 (en) Login apparatus, login apparatus, communication system between apparatuses, login control method, and recording medium