JP2002171300A - Packet transmission/reception device - Google Patents

Packet transmission/reception device

Info

Publication number
JP2002171300A
JP2002171300A JP2000369093A JP2000369093A JP2002171300A JP 2002171300 A JP2002171300 A JP 2002171300A JP 2000369093 A JP2000369093 A JP 2000369093A JP 2000369093 A JP2000369093 A JP 2000369093A JP 2002171300 A JP2002171300 A JP 2002171300A
Authority
JP
Japan
Prior art keywords
packet
request
block
label
transmission
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.)
Granted
Application number
JP2000369093A
Other languages
Japanese (ja)
Other versions
JP3512736B2 (en
Inventor
Takashi Nishida
孝志 西田
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.)
NEC Solution Innovators Ltd
Original Assignee
NEC Software Hokuriku Ltd
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 NEC Software Hokuriku Ltd filed Critical NEC Software Hokuriku Ltd
Priority to JP2000369093A priority Critical patent/JP3512736B2/en
Publication of JP2002171300A publication Critical patent/JP2002171300A/en
Application granted granted Critical
Publication of JP3512736B2 publication Critical patent/JP3512736B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Information Transfer Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

PROBLEM TO BE SOLVED: To reduce the buffer capacity for request packet of a packet transmission/reception device. SOLUTION: The packet transmission/reception device is provided with a means which receives a write transmission request from a higher layer device 101 to calculate the limit length of a packet, a means which divides the write transmission request into a string of one or more write request packets satisfying the limit length, a buffer for write request which can hold one write request packet having the limit length, a means which successively stores write request packets constituting the string in the buffer for write request one by one to transmit them, a means which receives a read transmission request from the higher layer device 101 to calculate the limit length of a packet, a means which divides the read transmission request into such string of one or more read request packets that response packets satisfying the limit length may be returned, a buffer for read request which can hold one read request packet, a means which successively stores read request packets constituting the string in the buffer for read request one by one to transmit them.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、パケット送受信装
置に関し、特に非同期通信手順を用いてパケット通信を
行うパケット送受信装置に関する。
The present invention relates to a packet transmitting / receiving apparatus, and more particularly, to a packet transmitting / receiving apparatus for performing packet communication using an asynchronous communication procedure.

【0002】[0002]

【従来の技術】接続された複数のノードの間でパケット
を使用して通信を行う通信手順としては、一定の間隔で
パケットを送信し、受信の確認を省くことにより、一定
時間内に大量のデータの転送を行うことを保証する同期
転送と、あるノードが一個のパケットを送信する毎に、
パケットを受信したノードがパケットを送信したノード
に受信を確認するパケットを返すことにより、パケット
の確実な授受を保証する非同期転送とがある。映像や音
声などの実時間性を重視する通信においては同期転送の
必要性が高いが、コンピュータにハードディスクやプリ
ンタを接続し、これらの機器の間で通信を行う通信手段
としては、高い信頼性を確保できる非同期転送が、より
望ましい通信手段である。IEEEが標準を規定してい
るIEEE高性能シリアルバス、いわゆるIEEE13
94バスにおいても、アイソクロノスモードと呼ばれる
同期転送と、アシンクロナスモードと呼ばれる非同期転
送の、両方の通信手段が規定されている。
2. Description of the Related Art As a communication procedure for performing communication using a packet between a plurality of connected nodes, a large number of nodes can be transmitted within a predetermined time by transmitting a packet at a predetermined interval and omitting confirmation of reception. Synchronous transfer that guarantees data transfer, and every time a node sends one packet,
There is asynchronous transfer in which a node that has received a packet returns a packet confirming reception to a node that has transmitted the packet, thereby guaranteeing reliable transmission and reception of the packet. Synchronous transfer is highly necessary for real-time communications such as video and audio, but high reliability is required as a means of communication between these devices by connecting a hard disk or printer to a computer. Reliable asynchronous transfer is a more desirable communication means. An IEEE high performance serial bus for which the IEEE defines a standard, so-called IEEE13
Also in the 94 bus, both communication means of a synchronous transfer called an isochronous mode and an asynchronous transfer called an asynchronous mode are defined.

【0003】前記のようなパケットを用いる非同期転送
において、一般に、あるノードが他のノードに何らかの
動作を要求するためには、要求する動作の内容を指示す
る所定の形式のパケットを送信しなければならない。以
下、このパケットを要求パケットという。非同期通信の
規約に従って、要求パケットを受信したノードは、要求
パケットを送信したノードに、まず受信を確認するパケ
ットを送信する。要求パケットを受信したノードはさら
に、要求パケットを受信したノードが要求パケットの要
求する動作を実行した結果、要求パケットを送信したノ
ードに返信する必要が生じた情報を含むパケットを、要
求パケットを送信したノードに送信することもある。以
下、このパケットを応答パケットという。要求パケット
に対して応答パケットが送信されるかどうかは、要求パ
ケットの内容により異なる。
In the asynchronous transfer using a packet as described above, generally, in order for a certain node to request another node for some operation, a certain type of packet indicating the content of the requested operation must be transmitted. No. Hereinafter, this packet is referred to as a request packet. In accordance with the protocol of asynchronous communication, a node that has received a request packet first transmits a packet for confirming reception to the node that transmitted the request packet. The node that has received the request packet further transmits the request packet with a packet including information that needs to be returned to the node that transmitted the request packet as a result of the operation that the node that received the request packet requested performs the operation requested by the request packet. It may be sent to the node that did. Hereinafter, this packet is referred to as a response packet. Whether a response packet is transmitted in response to a request packet depends on the content of the request packet.

【0004】前記のようなパケットを用いる非同期転送
において、任意の長さを持つデータ(以下、ブロックと
いう)をノード間で送受信するためには、一般に次のよ
うな方法を用いる。
In the asynchronous transfer using a packet as described above, in order to transmit and receive data having an arbitrary length (hereinafter, referred to as a block) between nodes, the following method is generally used.

【0005】あるノードが他のノードからブロックを読
み出すためには、図10(従来の技術におけるデータ読
み出し手順の例を示す図)に示すように、ブロックの読
み出しを要求するノードが、ブロック読み出し要求パケ
ットと呼ばれる要求パケットを、読み出すブロックを持
っているノードに送信する。ブロック読み出し要求パケ
ットは、パケットを受信したノードで読み出すブロック
が存在する位置を特定するための情報と、ブロックの長
さを指定する情報を含んでいる。ブロック読み出し要求
パケットを受信したノードは、送信したノードに、まず
受信を確認するパケットを送信し、次にブロック読み出
し要求パケットが指定するブロックを読み出し、読み出
した内容を含む、ブロック読み出し要求パケットに対応
する応答パケットを送信する。ブロック読み出し要求パ
ケットを送信したノードは、ブロック読み出し要求パケ
ットに対応する応答パケットを受信すると、受信を確認
するパケットを送り返す。以上で一回のブロックの読み
出しが終了する。
In order for a certain node to read a block from another node, as shown in FIG. 10 (a diagram showing an example of a data read procedure in the prior art), a node requesting a block read requests a block read request. A request packet called a packet is transmitted to a node having a block to be read. The block read request packet includes information for specifying the position where the block to be read exists at the node that has received the packet, and information for specifying the length of the block. The node that has received the block read request packet first transmits a packet confirming reception to the transmitting node, then reads the block specified by the block read request packet, and responds to the block read request packet including the read contents. To send a response packet. Upon receiving the response packet corresponding to the block read request packet, the node that has transmitted the block read request packet sends back a packet confirming reception. Thus, one block read is completed.

【0006】あるノードが他のノードにブロックを書き
込むためには、図11(従来の技術におけるデータ書き
込み手順の例を示す図)に示すように、ブロックの書き
込みを要求するノードが、ブロック書き込み要求パケッ
トと呼ばれるパケットを、ブロックが書き込まれるノー
ドに送信する。ブロック書き込み要求パケットは、パケ
ットを受信したノードに書き込むブロックの内容とブロ
ックの長さ、このブロックを書き込む位置を特定するた
めの情報を含んでいる。ブロック書き込み要求パケット
を受信したノードは、送信したノードに、まず受信を確
認するパケットを送信し、次にブロック書き込み要求パ
ケットが持っているブロックの内容を、パケットが指定
する位置に反映させる。以上で一回のブロックの書き込
みが終了する。
In order for a certain node to write a block to another node, as shown in FIG. 11 (a diagram showing an example of a data write procedure in the prior art), a node requesting a block write requires a block write request. Send a packet, called a packet, to the node where the block is written. The block write request packet includes the contents of the block to be written to the node that has received the packet, the length of the block, and information for specifying the position where the block is to be written. The node that has received the block write request packet first transmits a packet for confirming reception to the transmitting node, and then reflects the contents of the block that the block write request packet has in the position specified by the packet. Thus, one block writing is completed.

【0007】前記のようなパケットを用いる非同期転送
においては、一つのパケットの長さが固定であるか、あ
るいはパケットの最大の長さが規定されているのが一般
的である。例えばIEEE1394バスでは、許容され
る最長のパケットの長さが転送速度毎に定められてお
り、例えば98.304Mbits/sで転送を行う場合は約500バイ
トに制限されている。このような制限のため、非同期転
送によって他のノードからブロックを読み出したり、他
のノードにブロックを書き込んだりする場合、単一の要
求パケットを送信するだけでは実行できず、複数の要求
パケットを連続して送信しなければならない状況がしば
しば生じる。
In the asynchronous transfer using packets as described above, it is general that the length of one packet is fixed or the maximum length of the packet is specified. For example, in the IEEE 1394 bus, the maximum allowable packet length is determined for each transfer speed. For example, when transferring at 98.304 Mbits / s, the length is limited to about 500 bytes. Due to such limitations, when reading blocks from other nodes or writing blocks to other nodes by asynchronous transfer, it is not possible to execute only by sending a single request packet. A situation often arises that must be transmitted.

【0008】ブロック読み出し要求パケットは、要求を
受信するノードと、そのノードで読み出すブロックの位
置およびブロックの長さを特定するための情報を保持で
きれば十分であるので、パケットの長さは一般に短く、
長さがパケットの最大許容長を超えることはない。例え
ば、IEEE1394バスで用いられるブロック読み出
し要求パケットは20バイトの固定長であり、短い。し
かし、ブロック読み出し要求パケットに対応する応答パ
ケットには、読み出したブロックの内容が含まれるた
め、応答パケットの長さは可変であり、長さがパケット
の最大許容長を上回ることもあり得る。例えば、IEE
E1394バスで用いられるブロック読み出し要求パケ
ットに対応する応答パケットは、読み出したブロックの
長さ+24バイトの長さを持ち、ブロック読み出し要求
パケットにより読み出しが要求されるブロックの長さに
よっては、任意に長くなり得るため、応答パケットの長
さがパケットの最大許容長を超え、ブロックの授受が保
証されないこともあり得る。
[0008] The block read request packet is sufficient if it can hold information for specifying the node that receives the request and the position and length of the block to be read at that node.
The length does not exceed the maximum allowed packet length. For example, a block read request packet used on the IEEE 1394 bus has a fixed length of 20 bytes and is short. However, since the response packet corresponding to the block read request packet includes the contents of the read block, the length of the response packet is variable, and the length may exceed the maximum allowable length of the packet. For example, IEEE
The response packet corresponding to the block read request packet used in the E1394 bus has the length of the read block + 24 bytes, and may be arbitrarily long depending on the length of the block requested to be read by the block read request packet. Therefore, the length of the response packet may exceed the maximum allowable length of the packet, and the transfer of the block may not be guaranteed.

【0009】従って、応答パケットがパケットの最大許
容長を超えないよう、最初にブロック読み出し要求パケ
ットを送信する時点で、読み出しを要求するブロックの
長さを調整しておかなければならない。もし、読み出し
たいブロックの長さが長く、1個のブロック読み出し要
求パケットによって読み出そうとすると、これに対応す
る応答パケットの長さがパケットの最大許容長を超えて
しまう場合は、要求を複数のブロック読み出し要求パケ
ットに分割し、ブロック読み出し要求パケットに対応す
るどの応答パケットの長さも、パケットの最大許容長を
超えないようにしなければならない。
Therefore, the length of the block requested to be read must be adjusted when the first block read request packet is transmitted so that the response packet does not exceed the maximum allowable length of the packet. If the length of the block to be read is long and an attempt is made to read with one block read request packet, the length of the corresponding response packet exceeds the maximum allowable length of the packet. And the length of any response packet corresponding to the block read request packet must not exceed the maximum allowable packet length.

【0010】ブロック書き込み要求パケットは、書き込
むブロックの内容を含んでいるため、パケットの長さは
可変であるのが普通である。例えば、IEEE1394
バスで用いられるブロック書き込み要求パケットは、書
き込むブロックの長さ+24バイトの長さを持つ。よっ
て、書き込みたいブロックの長さが長く、1個のブロッ
ク書き込み要求パケットで送信しようとすると、ブロッ
ク書き込み要求パケットの長さがパケットの最大許容長
を超えてしまう場合は、要求を複数のブロック書き込み
要求パケットに分割し、どのブロック書き込み要求パケ
ットの長さもパケットの最大許容長を超えないようにし
なければならない。
Since the block write request packet contains the contents of the block to be written, the length of the packet is usually variable. For example, IEEE 1394
The block write request packet used on the bus has a length of a block to be written + 24 bytes. Therefore, if the length of the block to be written is long and transmission is attempted with one block write request packet, if the length of the block write request packet exceeds the maximum allowable length of the packet, the request is written into a plurality of block write requests. It must be split into request packets so that the length of any block write request packet does not exceed the maximum allowed packet length.

【0011】以上のようなパケットを用いた非同期転送
を用いて通信する複数のノード間において、あるノード
が、パケットの最大許容長を超えた長さを持つブロック
を、他のノードから読み出すために送信しなければなら
ない、一連のブロック読み出し要求パケットの列の内容
は、この列の先頭に位置し最初に送信するブロック読み
出し要求パケットを送信する以前に、すべて確定してい
る。すなわち、この列を構成する各パケットのうち、先
に送信するブロック読み出し要求パケットの結果によっ
て、以降に送信するブロック読み出し要求パケットの内
容を異なるものにしなければならないということはな
い。
[0011] Among a plurality of nodes communicating using the asynchronous transfer using a packet as described above, a certain node may read a block having a length exceeding the maximum allowable length of a packet from another node. The contents of the sequence of a series of block read request packets that must be transmitted are all determined before transmitting the first block read request packet that is located at the head of this sequence and is transmitted. That is, among the packets constituting this column, the content of the block read request packet transmitted thereafter does not have to be different depending on the result of the block read request packet transmitted first.

【0012】同様に、あるノードが、パケットの最大許
容長を超えた長さを持つブロックを、他のノードに書き
込むために送信しなければならない、一連のブロック書
き込み要求パケットの内容も、送信を開始する以前に、
すべて確定している。
Similarly, the contents of a series of block write request packets in which one node must transmit a block having a length exceeding the maximum allowable length of a packet in order to write the packet to another node are also transmitted. Before you start,
All are confirmed.

【0013】ゆえに、従来、パケットの最大許容長を超
えた長さを持つブロックを、他のノードから読み出そう
とする、もしくは他のノードに書き込もうとするノード
は、送信すべき一連の要求パケットをバッファに列挙し
て格納し、このバッファから順次、パケットを読み出し
て送信する構造を持つのが一般的である。
Therefore, conventionally, a node that attempts to read a block having a length exceeding the maximum allowable length of a packet from another node or writes a block to another node has a series of request packets to be transmitted. Is generally stored in a buffer, and packets are sequentially read from the buffer and transmitted.

【0014】[0014]

【発明が解決しようとする課題】上述した従来の技術に
おいては、ノードが前記の構造を実現するために、この
ノードが行い得るブロック読み出し要求のうち、最も長
いデータを読み出そうとするブロック読み出し要求を実
現するために送信する必要がある、一連のブロック読み
出し要求パケットの列の全体を保持することができる大
きさを持ったバッファを備えなければならない。同様
に、このノードは、このノードが行い得るブロック書き
込み要求のうち、最も長いデータを書き込もうとするブ
ロック書き込み要求を実現するために送信する必要があ
る、一連のブロック書き込み要求パケットの列の全体を
保持することができる大きさを持ったバッファも備えな
ければならない。
In the prior art described above, in order for a node to realize the above-described structure, a block read requesting to read the longest data among the block read requests that can be performed by the node. It must have a buffer large enough to hold the entire sequence of a series of read block request packets that need to be sent to fulfill the request. Similarly, the node sends the entire sequence of a series of block write request packets that need to be transmitted to fulfill the longest block write request among the block write requests that this node can make. You must also have a buffer large enough to hold.

【0015】しかし、前記の条件を満たすバッファは非
常に大容量なものとなる。ことに、ブロック書き込み要
求パケットを保持するバッファは、書き込むべきブロッ
クの内容を保持しなければならないため、バッファが大
きくなければならない必然性が高い。このように、大き
なバッファを備えなければならないことにより、パケッ
ト送受信装置が高価になってしまうという問題がある。
However, a buffer satisfying the above conditions has a very large capacity. In particular, since the buffer for holding the block write request packet must hold the contents of the block to be written, the buffer must be large. As described above, the provision of a large buffer has a problem that the packet transmitting / receiving apparatus becomes expensive.

【0016】また、大きなバッファを備えても、例え
ば、一連のブロック読み出し要求パケットをこのバッフ
ァに列挙して格納する場合、宛先や転送速度のように各
要求パケットで同一の部分についても要求パケット毎に
全て書き換えなければならず、書き換え回数が多くなっ
てしまうという問題がある。
Even if a large buffer is provided, for example, when a series of block read request packets are enumerated and stored in this buffer, the same portion of each request packet, such as the destination and transfer speed, is also included in each request packet. Must be completely rewritten, and the number of times of rewriting increases.

【0017】さらに、パケットの長さを有限値に制限す
る規約を持つ非同期通信手順を用いてパケット通信を行
う場合、パケット送受信装置に送信要求を行う上位の装
置が、使用している通信手順におけるパケットの制限長
に留意して送信要求しなければならないという問題も有
している。
Further, when performing packet communication using an asynchronous communication procedure having a protocol for limiting the length of a packet to a finite value, a higher-level device that sends a transmission request to a packet transmitting / receiving device uses There is also a problem that the transmission request must be made while paying attention to the limit length of the packet.

【0018】本発明は、以上の問題の少なくとも一つを
解決するパケット送受信装置を提供することを目的とす
る。
An object of the present invention is to provide a packet transmitting / receiving apparatus that solves at least one of the above problems.

【0019】[0019]

【課題を解決するための手段】本発明の第1のパケット
送受信装置は、非同期通信手順を用いてパケット通信を
行うパケット送受信装置であって、上位層装置からの送
信要求を1個または複数個の要求パケットの列に分割す
る第1の手段と、1個の要求パケットを保持する記憶容
量を持ったバッファと、列を構成する要求パケットを1
個ずつ前記バッファに順次格納し送信する第2の手段と
を有する。
A first packet transmitting / receiving apparatus according to the present invention is a packet transmitting / receiving apparatus for performing packet communication using an asynchronous communication procedure, and receives one or a plurality of transmission requests from an upper layer apparatus. Means for dividing a request packet into a sequence of request packets, a buffer having a storage capacity for holding one request packet, and
Second means for sequentially storing and transmitting the data one by one in the buffer.

【0020】本発明の第2のパケット送受信装置は、本
発明の第1のパケット送受信装置において、前記第2の
手段は、前記分割された要求パケットを順次前記バッフ
ァに格納するときに、列の2番目以降の要求パケットに
ついては、列の最初の要求パケットとの差異の部分のみ
を書き換えるようにしたことを特徴とする。
A second packet transmitting / receiving apparatus according to the present invention, in the first packet transmitting / receiving apparatus according to the present invention, wherein the second means, when sequentially storing the divided request packets in the buffer, For the second and subsequent request packets, only the difference from the first request packet in the column is rewritten.

【0021】本発明の第3のパケット送受信装置は、パ
ケットの長さを制限する規約を持つ非同期通信手順を用
いてパケット通信を行うパケット送受信装置であって、
上位層装置からの書き込み送信要求を受けたときに、こ
の送信要求を基にパケットの制限長を算出する手段と、
前記上位層装置からの送信要求を、前記制限長を満たす
1個または複数個の書き込み要求パケットの列に分割す
る手段と、前記制限長と同じ長さの1個の書き込み要求
パケットを保持する記憶容量を持った書き込み要求用バ
ッファと、列を構成する書き込み要求パケットを1個ず
つ前記書き込み要求用バッファに順次格納し送信する手
段とを有する。
A third packet transmitting / receiving apparatus according to the present invention is a packet transmitting / receiving apparatus for performing packet communication using an asynchronous communication procedure having a protocol for limiting the length of a packet,
Means for calculating a packet limit length based on the transmission request when a write transmission request is received from an upper layer device;
Means for dividing a transmission request from the upper layer device into one or a plurality of columns of write request packets satisfying the limit length, and storage for holding one write request packet having the same length as the limit length It has a write request buffer having a capacity, and means for sequentially storing and transmitting the write request packets constituting the columns one by one in the write request buffer.

【0022】本発明の第4のパケット送受信装置は、パ
ケットの長さを制限する規約を持つ非同期通信手順を用
いてパケット通信を行うパケット送受信装置であって、
上位層装置からの読み出し送信要求を受けたときに、こ
の送信要求を基にパケットの制限長を算出する手段と、
前記上位層装置からの送信要求を、前記制限長を満たす
応答パケットが返信されるような1個または複数個の読
み出し要求パケットの列に分割する手段と、1個の読み
出し要求パケットを保持する記憶容量を持った読み出し
要求用バッファと、列を構成する読み出し要求パケット
を1個ずつ前記読み出し要求用バッファに順次格納し送
信する手段とを有する。
A fourth packet transmitting / receiving apparatus according to the present invention is a packet transmitting / receiving apparatus for performing packet communication using an asynchronous communication procedure having a protocol for limiting the length of a packet,
Means for calculating a limit length of a packet based on the transmission request when receiving a read transmission request from an upper layer device;
Means for dividing a transmission request from the upper layer device into one or a plurality of columns of read request packets such that a response packet satisfying the limit length is returned, and storage for holding one read request packet It has a read request buffer having a capacity, and means for sequentially storing and transmitting read request packets constituting a column one by one in the read request buffer.

【0023】本発明の第5のパケット送受信装置は、パ
ケットの長さを制限する規約を持つ非同期通信手順を用
いてパケット通信を行うパケット送受信装置であって、
上位層装置からの書き込み送信要求を受けたときに、こ
の送信要求を基にパケットの制限長を算出する手段と、
前記上位層装置からの書き込み送信要求を、前記制限長
を満たす1個または複数個の書き込み要求パケットの列
に分割する手段と、前記制限長と同じ長さの1個の書き
込み要求パケットを保持する記憶容量を持った書き込み
要求用バッファと、列を構成する書き込み要求パケット
を1個ずつ前記書き込み要求用バッファに順次格納し送
信する手段とを備えた書き込み処理部と、前記上位層装
置からの読み出し送信要求を受けたときに、この送信要
求を基にパケットの制限長を算出する手段と、前記上位
層装置からの読み出し送信要求を、前記制限長を満たす
応答パケットが返信されるような1個または複数個の読
み出し要求パケットの列に分割する手段と、1個の読み
出し要求パケットを保持する記憶容量を持った読み出し
要求用バッファと、列を構成する読み出し要求パケット
を1個ずつ前記読み出し要求用バッファに順次格納し送
信する手段とを備えた読み出し処理部とを有する。
A fifth packet transmitting / receiving apparatus according to the present invention is a packet transmitting / receiving apparatus for performing packet communication using an asynchronous communication procedure having a rule for limiting the length of a packet,
Means for calculating a packet limit length based on the transmission request when a write transmission request is received from an upper layer device;
Means for dividing the write transmission request from the upper layer device into one or more columns of write request packets satisfying the limit length, and holding one write request packet having the same length as the limit length A write processing unit comprising: a write request buffer having a storage capacity; a unit for sequentially storing and transmitting write request packets forming a column one by one in the write request buffer; and reading from the upper layer device. Means for calculating a packet limit length based on the transmission request when receiving the transmission request, and a read transmission request from the upper layer device which is one such that a response packet satisfying the limit length is returned. A read request buffer having a storage capacity for holding one read request packet; And a read processing unit and means for sequentially storing and transmitting to the read request buffer one by one the read request packets constituting the column.

【0024】本発明の第6のパケット送受信装置は、本
発明の第1,第2,第3,第4または第5のパケット送
受信装置において、前記上位層装置からの送信要求を1
個または複数個の要求パケットの列に分割して送信する
場合に、各要求パケットに付けるラベルを割り当てると
ともに割り当てたラベルを記録する手段をさらに有す
る。
According to a sixth packet transmitting / receiving apparatus of the present invention, in the first, second, third, fourth, or fifth packet transmitting / receiving apparatus of the present invention, a transmission request from the upper layer apparatus is transmitted by one.
In a case where the request packet is divided into a plurality of request packets and transmitted, a means for assigning a label to each request packet and recording the assigned label is further provided.

【0025】本発明の第7のパケット送受信装置は、本
発明の第1,第2,第3,第4または第5のパケット送
受信装置において、前記上位層装置からの送信要求を1
個または複数個の要求パケットの列に分割して送信する
場合に、各要求パケットに付けるラベルを割り当てると
ともに、割り当てる際に列の何番目の要求パケットに付
けられたラベルであるかを示す連続番号を各ラベルに付
与する手段と、この付与された連続番号を前記割り当て
られたラベルとともに記録する手段とをさらに有する。
According to a seventh packet transmitting / receiving apparatus of the present invention, in the first, second, third, fourth, or fifth packet transmitting / receiving apparatus of the present invention, the transmission request from the upper layer apparatus is set to one.
When a packet is divided and transmitted in a sequence of one or more request packets, a label is assigned to each request packet, and a serial number indicating the number of the request packet in the sequence when assigning the label And a means for recording the assigned serial number together with the assigned label.

【0026】本発明の第8のパケット送受信装置は、本
発明の第1,第2,第3,第4または第5のパケット送
受信装置において、前記要求パケットに対応する応答パ
ケットを受信する手段と、前記応答パケットが含むデー
タを前記上位層装置に備えられた記憶装置に順次コピー
し、分割して受信したデータを一つのブロックに構成す
る手段と、前記要求パケットに対応する全ての応答パケ
ットの受信を終えたときに前記上位層装置に通知を行う
手段とをさらに有する。
An eighth packet transmitting / receiving apparatus according to the present invention is the first, second, third, fourth, or fifth packet transmitting / receiving apparatus according to the present invention, wherein the packet transmitting / receiving apparatus receives a response packet corresponding to the request packet. Means for sequentially copying the data included in the response packet to a storage device provided in the upper layer device, configuring the divided and received data into one block, and Means for notifying the upper layer device when the reception is completed.

【0027】本発明の第9のパケット送受信装置は、本
発明の第6のパケット送受信装置において、前記要求パ
ケットに対応する応答パケットを受信する手段と、前記
応答パケットが含むデータを前記上位層装置に備えられ
た記憶装置に順次コピーし、分割して受信したデータを
一つのブロックに構成する手段と、対応する要求パケッ
トと同じラベルが付けられた前記応答パケットのラベル
を確認することにより、前記要求パケットに対応する全
ての応答パケットの受信を終えたことを検出する手段
と、前記全ての応答パケットの受信を終えたときに前記
上位層装置に通知を行う手段とをさらに有する。
According to a ninth packet transmitting / receiving apparatus of the present invention, in the sixth packet transmitting / receiving apparatus of the present invention, means for receiving a response packet corresponding to the request packet; Means for sequentially copying the data received in the storage device provided in the block, dividing the received data into one block, and confirming the label of the response packet with the same label as the corresponding request packet, The apparatus further includes means for detecting that all the response packets corresponding to the request packet have been received, and means for notifying the upper layer device when the reception of all the response packets has been completed.

【0028】本発明の第10のパケット送受信装置は、
本発明の第7のパケット送受信装置において、前記要求
パケットに対応する応答パケットを受信する手段と、前
記応答パケットが含むデータを前記上位層装置に備えら
れた記憶装置にコピーする位置を、前記応答パケットに
付いているラベルの連続番号により特定して順次コピー
する手段と、分割して受信したデータを一つのブロック
に構成する手段と、対応する要求パケットと同じラベル
が付けられた前記応答パケットのラベルを確認すること
により、前記要求パケットに対応する全ての応答パケッ
トの受信を終えたことを検出する手段と、前記全ての応
答パケットの受信を終えたときに前記上位層装置に通知
を行う手段とをさらに有する。
The tenth packet transmitting / receiving apparatus of the present invention comprises:
In the seventh packet transmitting / receiving apparatus of the present invention, means for receiving a response packet corresponding to the request packet, and a position where data included in the response packet is copied to a storage device provided in the upper layer device, Means for sequentially copying by specifying the serial number of the label attached to the packet, means for forming the received data divided into one block, and means for copying the response packet having the same label as the corresponding request packet. Means for detecting completion of reception of all response packets corresponding to the request packet by confirming a label, and means for notifying the upper layer apparatus when reception of all response packets is completed And

【0029】本発明の第11のパケット送受信装置は、
本発明の第6,第7,第9または第10のパケット送受
信装置において、前記要求パケットに付けたラベルの使
用を開始した時刻を各ラベルに対応して記録する手段
と、一定時間以上使用中のままになっているラベル対応
のパケットの送受信をタイムアウトとして中止する手段
とをさらに有する。
An eleventh packet transmitting / receiving apparatus according to the present invention comprises:
In the sixth, seventh, ninth, or tenth packet transmitting / receiving apparatus of the present invention, means for recording a time at which use of a label attached to the request packet is started, corresponding to each label, Means for terminating transmission / reception of a packet corresponding to the label which has been left as a timeout.

【0030】[0030]

【発明の実施の形態】本発明の実施の形態について図面
を参照して詳細に説明する。なお、ここでは本発明の実
施の形態を、本発明のパケット送受信装置がIEEE1
394バスに適用された場合を例として説明するが、同
様の非同期通信手順を用いたものであればIEEE13
94バス以外に適用されてもよい。
Embodiment of the embodiment of the present invention will be described with reference to the drawings in detail. Here, the embodiment of the present invention is described assuming that the packet transmitting / receiving apparatus of the present invention is based on IEEE1.
The case where the present invention is applied to the 394 bus will be described as an example.
It may be applied to other than the 94 bus.

【0031】最初に、IEEE1394の定める通信手
順のうち、本実施の形態の前提となる部分について説明
する。
First, a description will be given of a part of the communication procedure defined by IEEE 1394, which is a premise of the present embodiment.

【0032】IEEE1394バスでは、他のノードの
資源を特定するために、アドレスの概念が用いられる。
ノードに属する資源のうち、他のノードの読み書きを許
す資源は、IEEE1394が定義する形式を持つアド
レス空間に配置される。この資源に対して読み書きを行
おうとする他のノードは、アドレスを用いてアクセスし
たい資源を指定し、アドレスの指定を含むパケットを送
ることにより、資源に対する読み書きを実現する。
In the IEEE 1394 bus, the concept of an address is used to specify resources of another node.
Among the resources belonging to a node, those resources that allow other nodes to read and write are arranged in an address space having a format defined by IEEE1394. Other nodes that want to read / write to this resource implement the read / write to the resource by specifying the resource to be accessed using the address and sending a packet containing the address specification.

【0033】IEEE1394バスによる非同期転送で
は、パケットの受信を確認するためのパケットは、認識
パケットと呼ばれる。例えば、あるノードが他のノード
に要求パケットを送信すると、要求パケットを送信した
ノードは要求パケットを送信したノードに、要求パケッ
トの送信から一定時間以内に認識パケットを送信する。
IEEE1394は認識パケットとして、「完了」や
「保留」といった意味を表すものの他、数種類を定義し
ているが、本実施例では、「完了」と「保留」以外の認
識パケットは一律に「エラー」を意味するものとして扱
う。また、要求パケットを送信したノードが、要求パケ
ットの送信から一定時間以内に認識パケットを受信する
ことができなければ、「エラー」を意味する認識パケッ
トを受信した場合と同様に扱う。
In asynchronous transfer using the IEEE 1394 bus, a packet for confirming reception of a packet is called a recognition packet. For example, when a certain node transmits a request packet to another node, the node that transmitted the request packet transmits a recognition packet to the node that transmitted the request packet within a predetermined time from the transmission of the request packet.
The IEEE 1394 defines several types of recognition packets in addition to those representing meanings such as “completed” and “pending”, but in this embodiment, recognition packets other than “completed” and “pending” are uniformly “error”. Is treated as meaning. If the node that has transmitted the request packet cannot receive the recognition packet within a predetermined time after the transmission of the request packet, the node handles the recognition packet in a manner similar to the case where the node has received the recognition packet meaning “error”.

【0034】あるノードが他のノードに要求パケットを
送信し、それに対して「保留」を意味する認識パケット
が送信された場合は、この後、要求パケットを受信した
ノードが要求パケットを送信したノードに、応答パケッ
トと呼ばれるパケットを送信する。これは主に、要求パ
ケットが他のノードに要求した動作の結果として、要求
パケットを受信したノードが、何らかの情報を要求パケ
ットを送信したノードに返さなければならない場合に起
こる。すべての応答パケットは、要求パケットに付けら
れたラベルと同一のラベルを持ち、ある応答パケットが
以前に発信されたどの要求パケットに対応するものであ
るかを特定することを可能にしている。
When a certain node transmits a request packet to another node and a recognition packet indicating “pending” is transmitted in response to the request packet, the node that has received the request packet thereafter transmits the request packet to the other node. , A packet called a response packet is transmitted. This mainly occurs when the node receiving the request packet has to return some information to the node that sent the request packet as a result of the operation requested by the request packet to another node. All response packets have the same label as the label attached to the request packet, making it possible to identify which response packet corresponds to which previously transmitted request packet.

【0035】要求パケットがブロック読み出し要求パケ
ットであるならば、認識パケットは「保留」「エラー」
のいずれかである。「保留」を意味する認識パケットが
送信された場合は、この後、要求パケットを受信したノ
ードが要求パケットを送信したノードに、応答パケット
を送信する。ブロック読み出し要求パケットに対応する
応答パケットは、他ノードから読み出したブロックの長
さとその内容を含む。ブロック読み出し要求パケットに
対応する応答パケットはまた、応答コードと呼ばれる、
ブロック読み出し要求パケットの実行結果を示す情報を
含んでいる。IEEE1394は応答コードとして、
「コマンドの実行に成功」「アドレスエラー」など数種
類を定義しているが、本実施例では、「コマンドの実行
に成功」以外の応答コードは一律にエラーとして扱う。
If the request packet is a block read request packet, the recognition packet is "pending" or "error".
Is one of When a recognition packet meaning “pending” is transmitted, the node that has received the request packet transmits a response packet to the node that transmitted the request packet. The response packet corresponding to the block read request packet includes the length and contents of the block read from another node. The response packet corresponding to the block read request packet is also called a response code,
It contains information indicating the execution result of the block read request packet. IEEE 1394 is used as a response code.
Although several types such as “command execution succeeded” and “address error” are defined, in this embodiment, response codes other than “command execution succeeded” are uniformly treated as errors.

【0036】要求パケットがブロック書き込み要求パケ
ットであるならば、認識パケットは「完了」「保留」
「エラー」のいずれかである。「保留」を意味する認識
パケットが送信された場合は、この後、要求パケットを
受信したノードが要求パケットを送信したノードに、応
答パケットを送信する。ブロック書き込み要求パケット
に対応する応答パケットは、応答コードを含む。本実施
例では、前項と同様に、「コマンドの実行に成功」以外
の応答コードは一律にエラーとして扱う。
If the request packet is a block write request packet, the recognition packet is "completed" or "pending".
One of "error". When a recognition packet meaning “pending” is transmitted, the node that has received the request packet transmits a response packet to the node that transmitted the request packet. A response packet corresponding to the block write request packet includes a response code. In this embodiment, as in the previous section, response codes other than "command execution succeeded" are uniformly treated as errors.

【0037】IEEE1394はノード間で転送される
パケットの長さを有限値に制限する制限長の規約を持
ち、パケットの制限長は、そのパケットを転送する速度
により定まる。なお、本実施の形態においては最大許容
ブロック長とは、ブロック読み出し要求の処理にあって
は、ブロック読み出し要求パケットに対応する応答パケ
ットが、転送速度により定まるパケットの最大の長さ
(前記の制限長)を持つ場合に、この応答パケットが保
持し得る最大のブロックの長さのことをいい、ブロック
書き込み要求の処理にあっては、ブロック書き込み要求
パケットが、転送速度により定まるパケットの最大の長
さ(前記の制限長)を持つ場合に、この要求パケットが
保持し得る最大のブロックの長さのことをいう。換言す
れば、ブロック書き込み要求の処理にあっては、図7に
示すデータブロック904に格納される最大許容ブロッ
ク長のデータおよびチェック用データ(IEEE139
4では4バイト)とパケットヘッダ903に格納される
固定長部分(IEEE1394では20バイト)との合
計の長さが、前記制限長以下であればよいことになる。
ブロック読み出し要求の処理における応答パケットにつ
いても同様である。
IEEE 1394 has a limit length rule for limiting the length of a packet transferred between nodes to a finite value, and the limit length of a packet is determined by the speed at which the packet is transferred. In the present embodiment, the maximum allowable block length refers to the maximum length of a response packet corresponding to a block read request packet determined by the transfer rate in the processing of a block read request (the above-described restriction). Length), means the maximum block length that can be held by the response packet. In the processing of a block write request, the block write request packet is the maximum length of the packet determined by the transfer speed. In this case, the maximum length of the block that can be held by the request packet. In other words, in the processing of the block write request, the data of the maximum allowable block length and the check data (IEEE 139) stored in the data block 904 shown in FIG.
4, the total length of the fixed length portion (20 bytes in IEEE 1394) stored in the packet header 903 may be equal to or less than the limit length.
The same applies to the response packet in the processing of the block read request.

【0038】次に、本発明の実施の形態について図面を
参照して詳細に説明する。
Next, embodiments of the present invention will be described in detail with reference to the drawings.

【0039】図1は、本発明のパケット送受信装置と他
装置によりIEEE1394バスに接続するノードを構
成した例を示す図である。
FIG. 1 is a diagram showing an example in which a packet transmission / reception device of the present invention and another device constitute a node connected to an IEEE 1394 bus.

【0040】上位層装置101は、パケット送受信装置
の利用者として、送信要求を行う部分である。上位層装
置101がパケット送受信装置103に行う送信要求
は、要求の発信先のノードや転送速度の指定、要求を受
信したノードに要求する動作など、パケットを送信する
ために必要な情報を指定して行われる。
The upper layer device 101 is a part for making a transmission request as a user of the packet transmitting / receiving device. The transmission request made by the upper layer device 101 to the packet transmission / reception device 103 specifies information necessary for transmitting a packet, such as designation of a request destination node and a transfer rate, and an operation of requesting a node that has received the request. Done.

【0041】RAM102は、上位層装置101とパケ
ット送受信装置103がともにアクセス可能なメモリで
あって、上位層装置101がブロック書き込み要求をパ
ケット送受信装置103に行う場合は、上位層装置10
1が送信しようとするブロックを格納する場所として、
上位層装置101がブロック読み出し要求をパケット送
受信装置103に行う場合は、パケット送受信装置10
3が受信したブロックを格納する場所として、それぞれ
用いられる。
The RAM 102 is a memory that can be accessed by both the upper layer device 101 and the packet transmission / reception device 103. When the upper layer device 101 issues a block write request to the packet transmission / reception device 103, the upper layer device 10
As a place to store the block that 1 wants to send,
When the upper layer apparatus 101 issues a block read request to the packet transmitting / receiving apparatus 103, the packet transmitting / receiving apparatus 10
3 is used as a place for storing the received block.

【0042】本発明のパケット送受信装置103は、上
位層装置101の送信要求を解釈し、IEEE1394
の規定に従った形式の要求パケットを必要な個数だけ作
成して、下位層のパケット送受信装置104に送信を要
求する。パケット送受信装置103はまた、下位層のパ
ケット送受信装置104から要求パケットに対する応答
パケットの受信の通知を受け、応答パケットを解釈す
る。パケット送受信装置103はまた、上位層装置10
1の送信要求に対してパケット送受信装置103が処理
した結果を上位層装置101に通知する。
The packet transmitting / receiving apparatus 103 of the present invention interprets the transmission request of the upper layer apparatus 101 and performs the IEEE 1394
A required number of request packets in a format conforming to the above-mentioned rules are created, and the lower layer packet transmitting / receiving apparatus 104 is requested to transmit. The packet transmitting / receiving apparatus 103 also receives a notification of the reception of a response packet to the request packet from the lower layer packet transmitting / receiving apparatus 104, and interprets the response packet. The packet transmission / reception device 103 also includes the upper layer device 10
The upper layer device 101 is notified of the result of the packet transmission / reception device 103 processing one transmission request.

【0043】下位層のパケット送受信装置104は、I
EEE1394の規約に従った形式で作成した要求パケ
ットを実際にバスに送信する処理と、バスから受信した
要求パケットに対する応答パケットの受信をパケット送
受信装置103に通知する処理を行う装置である。
The lower layer packet transmitting / receiving apparatus 104
This is a device that performs a process of actually transmitting a request packet created in a format in accordance with the rules of EEE1394 to the bus and a process of notifying the packet transmitting / receiving device 103 of the reception of a response packet to the request packet received from the bus.

【0044】下位層のパケット送受信装置104は、パ
ケット送受信装置103のパケット送信要求を一旦受け
入れると、パケットを送信し、必要ならパケットの再送
信を行い、認識パケットの受信を待ち、認識パケットの
内容をパケット送受信装置103に通知する。要求パケ
ットの発信後、IEEE1394の規約に定める時間内
に認識パケットが到着しない場合は、「エラー」を意味
する認識パケットを受信した場合と同様に通知する。
Once the packet transmission / reception device 104 of the lower layer accepts the packet transmission request of the packet transmission / reception device 103, it transmits the packet, retransmits the packet if necessary, waits for the reception of the recognition packet, To the packet transmitting / receiving apparatus 103. If the recognition packet does not arrive within the time specified by the IEEE 1394 rules after the transmission of the request packet, the notification is made as in the case where the recognition packet meaning "error" is received.

【0045】下位層のパケット送受信装置104は、バ
スから要求パケットに対する応答パケットを受信する
と、認識パケットを返信し、応答パケットの受信をパケ
ット送受信装置103に通知する。下位層のパケット送
受信装置104は、応答パケットの受信の通知をパケッ
ト送受信装置103が受け入れるまでの間に、次の応答
パケットを受信した場合は、再試行を促す認識パケット
を返信し、応答パケットを受け入れない。
Upon receiving a response packet to the request packet from the bus, the lower layer packet transmitting / receiving apparatus 104 returns a recognition packet and notifies the packet transmitting / receiving apparatus 103 of the reception of the response packet. When the packet transmitting / receiving apparatus 104 receives the next response packet before the packet transmitting / receiving apparatus 103 receives the notification of the reception of the response packet, the lower layer packet transmitting / receiving apparatus 104 returns a recognition packet urging retry, and returns the response packet. I do not accept.

【0046】図2は、本発明の一実施の形態の構成を示
すブロック図である。
FIG. 2 is a block diagram showing the configuration of one embodiment of the present invention.

【0047】ラベル管理部201は、パケット送受信装
置103によって送信する全ての要求パケットに付ける
ラベルを管理する部分であり、図3(図2のラベル管理
部201の詳細を示す図)に示すように、ラベル管理域
501を有し、時計505を有し、パケット送受信装置
103を構成する他の全ての部分から呼び出し可能な、
ラベル割り当て処理502、ラベル終了処理503、ラ
ベルタイムアウト処理504の各処理を提供する。
The label management unit 201 manages labels attached to all request packets transmitted by the packet transmitting / receiving apparatus 103. As shown in FIG. 3 (a diagram showing details of the label management unit 201 in FIG. 2). , A label management area 501, a clock 505, and callable from all other parts constituting the packet transmitting / receiving apparatus 103.
Each process of a label allocation process 502, a label end process 503, and a label timeout process 504 is provided.

【0048】ラベル管理域501は、パケット送受信装
置103によって送信する全ての要求パケットに付けた
ラベルを保持する部分である。ラベル管理域501は、
通信手順が許容する全てのラベルについて、ラベルが使
用中であるかについての情報と、ラベルが使用中である
場合は、ラベルの開始時刻、すなわち、そのラベルの記
録が最後に未使用から使用中に変化した時刻についての
情報を保持し、また指定したラベルを使用中として記録
する機能、使用中として記録されている指定したラベル
の記録を未使用に戻す機能を持つ。
The label management area 501 is a section for holding labels attached to all request packets transmitted by the packet transmitting / receiving apparatus 103. The label management area 501 is
For all the labels allowed by the communication procedure, information on whether the label is in use and, if the label is in use, the start time of the label, i.e., the record of that label was last used since unused In addition, it has a function of storing information about the changed time, recording a specified label as being used, and returning a record of a specified label recorded as being used to unused.

【0049】ラベル割り当て処理502は、ラベル管理
域501にラベルを使用中として記録するための処理で
ある。ラベル割り当て処理502を呼び出すと、ラベル
管理部201は、ラベル管理域501を参照し、使用中
として記録されていないラベルを一つ選び、選んだラベ
ルをラベル管理域501に使用中として記録し、新たに
割り当てたラベルとして呼び出し側に返す処理を行う。
このとき、時計505により現在時刻を知り、ラベルの
開始時刻としてラベル管理域501に記録する。また呼
び出し側が割り当てを希望するラベルを指定した場合
は、ラベル管理域501を参照し、そのラベルが使用中
として記録されていなければ、新たに使用中として記録
した後に呼び出し側に成功を通知し、そうでない場合は
呼び出し側に失敗を通知する処理を行う。
The label assignment process 502 is a process for recording a label in use in the label management area 501. When the label assignment processing 502 is called, the label management unit 201 refers to the label management area 501, selects one label not recorded as being used, records the selected label as being used in the label management area 501, Perform processing to return to the caller as a newly allocated label.
At this time, the current time is known from the clock 505 and recorded in the label management area 501 as the label start time. If the caller specifies a label to be assigned, the label management area 501 is referred to. If the label is not recorded as being used, the label is newly recorded as being used, and then the caller is notified of success. Otherwise, a process for notifying the caller of the failure is performed.

【0050】ラベル終了処理503は、ラベル管理域5
01に使用中として記録されている指定したラベルの使
用を終了するための処理である。呼び出し側が使用を終
了したいラベルを指定して呼び出すと、ラベル管理部2
01は、指定したラベルの記録を未使用に戻す処理を行
う。
The label end processing 503 is performed in the label management area 5
This is a process for terminating the use of the designated label recorded as being used in 01. When the caller designates the label whose use is to be terminated and calls it, the label management unit 2
01 performs processing to return the recording of the designated label to unused.

【0051】ラベルタイムアウト処理504は、ラベル
管理域501に使用中として記録されている全てのラベ
ルについて、ラベルの使用時間のタイムアウトを行う処
理である。ラベルタイムアウト処理504は、使用中と
して記録されているラベルのうち、開始時刻から一定時
間経過しても、使用中の状態のままとなっているラベル
の付いた要求パケットについてはタイムアウトとする。
そして、そのラベルが図4(図2のブロック読み出し用
ラベル管理部301の詳細を示す図)に示すブロック読
み出し用ラベル管理域601に使用中として記録されて
いるならば、ブロック読み出し用ラベルエラー終了処理
604を行い、図6(図2のブロック書き込み用ラベル
管理部401の詳細を示す図)に示すブロック書き込み
用ラベル管理域801に使用中として記録されているな
らば、ブロック書き込み用ラベルエラー終了処理804
を行い、いずれでもなければ(ブロック読み出し用ラベ
ル管理域601,ブロック書き込み用ラベル管理域80
1のいずれにおいても、そのラベルが使用中として記録
されていなかった場合は)、上位層装置101に送信要
求の失敗を通知する。
The label timeout process 504 is a process for timing out the label use time for all the labels recorded as being used in the label management area 501. The label time-out process 504 sets a time-out for a request packet with a label that is in use even after a certain time has elapsed from the start time among the labels recorded as being used.
If the label is recorded as being used in the block reading label management area 601 shown in FIG. 4 (a diagram showing details of the block reading label management unit 301 in FIG. 2), the block reading label error ends. If the process 604 is performed and the data is recorded as being used in the block write label management area 801 shown in FIG. 6 (a diagram showing the details of the block write label management unit 401 in FIG. 2), the block write label error ends. Process 804
If none of the above is applied (the label management area for block reading 601 and the label management area for block writing 80
In either case, if the label is not recorded as being used), the upper layer device 101 is notified of the failure of the transmission request.

【0052】送信要求解釈部204は、上位層装置10
1の行う全ての送信要求を受け、送信要求の内容を解析
し、送信要求の種類によって専用化された各部分に、送
信要求の処理を振り分ける部分である。
The transmission request interpretation unit 204
1 is a part that receives all the transmission requests made, analyzes the contents of the transmission requests, and distributes the processing of the transmission requests to each part dedicated to the type of the transmission requests.

【0053】送信要求解釈部204は最初に、上位層装
置101の送信要求に付けられたラベルが使用中である
かどうかをラベル管理部に問い合わせ、使用中であるな
ら、上位層装置101の送信要求を受け入れない。
The transmission request interpreting unit 204 first inquires of the label management unit whether or not the label attached to the transmission request of the upper layer device 101 is in use. Do not accept the request.

【0054】送信要求解釈部204は、上位層装置10
1の送信要求がブロック読み出し要求でもブロック書き
込み要求でもなければ、上位層装置101の送信要求を
一般要求送信制御部202に処理させる。
The transmission request interpreting unit 204 is a
If the first transmission request is neither a block read request nor a block write request, the general request transmission control unit 202 processes the transmission request of the upper layer device 101.

【0055】送信要求解釈部204は、上位層装置10
1の送信要求がブロック読み出し要求であり、ブロック
読み出し処理部205が動作していなければ、上位層装
置101の送信要求をブロック読み出し処理部205の
ブロック読み出し要求送信制御部302に処理させる。
ブロック読み出し処理部205が既に動作していれば、
上位層装置101の送信要求を受け入れない。
The transmission request interpreting unit 204 is a
If the transmission request 1 is a block read request and the block read processing unit 205 is not operating, the transmission request of the upper layer device 101 is processed by the block read request transmission control unit 302 of the block read processing unit 205.
If the block read processing unit 205 is already operating,
The transmission request from the upper layer device 101 is not accepted.

【0056】送信要求解釈部204は、上位層装置10
1の送信要求がブロック書き込み要求であり、ブロック
書き込み処理部207が動作していなければ、上位層装
置101の送信要求をブロック書き込み処理部207の
ブロック書き込み要求送信制御部402に処理させる。
ブロック書き込み処理部が既に動作していれば、上位層
装置101の送信要求を受け入れない。
The transmission request interpreting section 204
If the transmission request of No. 1 is a block write request and the block write processing unit 207 is not operating, the transmission request of the upper layer device 101 is processed by the block write request transmission control unit 402 of the block write processing unit 207.
If the block write processing unit is already operating, it does not accept the transmission request from the upper layer device 101.

【0057】受信応答解釈部206は、下位層のパケッ
ト送受信装置104による応答パケットの受信通知を受
け、応答パケットの内容を解析し、応答パケットの種類
によって専用化された各部分に、応答パケットの処理を
振り分ける部分である。
The reception response interpreting unit 206 receives the notification of the reception of the response packet by the packet transmitting / receiving device 104 of the lower layer, analyzes the content of the response packet, and stores the response packet in each part dedicated according to the type of the response packet. This is the part that distributes the processing.

【0058】受信応答解釈部206は、応答パケットの
内容がブロック読み出し要求パケットに対応する応答で
もブロック書き込み要求パケットに対応する応答でもな
ければ、応答パケットを一般応答受信制御部203に処
理させる。
If the content of the response packet is neither a response corresponding to the block read request packet nor a response corresponding to the block write request packet, the reception response interpreter 206 causes the general response reception controller 203 to process the response packet.

【0059】受信応答解釈部206は、応答パケットの
内容がブロック読み出し要求パケットに対応する応答で
あれば、応答パケットをブロック読み出し処理部205
のブロック読み出し応答受信制御部303に処理させ
る。
If the content of the response packet is a response corresponding to the block read request packet, the reception response interpreting unit 206
Block read response reception control unit 303.

【0060】受信応答解釈部206は、応答パケットの
内容がブロック書き込み要求パケットに対応する応答で
あれば、応答パケットをブロック書き込み処理部207
のブロック書き込み応答受信制御部403に処理させ
る。
If the content of the response packet is a response corresponding to the block write request packet, the reception response interpreting unit 206 converts the response packet into the block write processing unit 207.
Of the block write response reception control unit 403.

【0061】一般要求送信制御部202は、上位層装置
101の送信要求がブロック読み出し要求ではなく、ブ
ロック書き込み要求でもない場合に、送信要求の処理を
行う部分である。
The general request transmission control unit 202 is a part for processing a transmission request when the transmission request from the upper layer device 101 is neither a block read request nor a block write request.

【0062】一般応答受信制御部203は、下位層のパ
ケット送受信装置104が受信した応答パケットがブロ
ック読み出し要求パケットに対応する応答パケットでは
なく、ブロック書き込み要求パケットに対応する応答パ
ケットでもない場合に、受信した応答パケットの処理を
行う部分である。
When the response packet received by the lower layer packet transmitting / receiving device 104 is not a response packet corresponding to the block read request packet and is not a response packet corresponding to the block write request packet, the general response reception control unit 203 This is a part for processing the received response packet.

【0063】ブロック読み出し処理部205は、ブロッ
ク読み出し送信要求と、それに対応する応答を管理する
ための部分であり、ブロック読み出し要求送信制御部3
02、ブロック読み出し応答受信制御部303、ブロッ
ク読み出し用ラベル管理部301の各部分からなる。ブ
ロック読み出し要求送信制御部302、ブロック読み出
し応答受信制御部303、ブロック読み出し用ラベル管
理部301の各部分のうち、一つでも動作していれば、
ブロック読み出し処理部205は動作していると見なさ
れる。一つも動作していなければ、ブロック読み出し処
理部205は動作していないと見なされる。一つのブロ
ック読み出し処理部は、一つのブロック読み出し要求し
か管理することはできないので、既に動作しているブロ
ック読み出し処理部205は、新たなブロック読み出し
送信要求を受け入れない。
The block read processing unit 205 manages a block read transmission request and a response corresponding to the request.
02, a block read response reception control unit 303, and a block read label management unit 301. If at least one of the block read request transmission control unit 302, block read response reception control unit 303, and block read label management unit 301 is operating,
The block read processing unit 205 is considered to be operating. If none of them is operating, it is considered that the block read processing unit 205 is not operating. Since one block read processing unit can manage only one block read request, the already operating block read processing unit 205 does not accept a new block read transmission request.

【0064】ブロック読み出し用ラベル管理部301
は、ブロック読み出し送信要求を実現するために送信す
るブロック読み出し要求パケットに付けるラベルを管理
する部分であり、図4に示すように、ブロック読み出し
用ラベル管理域601を有し、ブロック読み出し処理部
205に属する他の部分から呼び出し可能な、ブロック
読み出し用ラベル割り当て処理602、ブロック読み出
し用ラベル通常終了処理603、ブロック読み出し用ラ
ベルエラー終了処理604の各処理を提供する。
Block reading label management unit 301
Is a part for managing a label attached to a block read request packet transmitted to realize a block read transmission request. As shown in FIG. 4, the block has a block read label management area 601 and a block read processing unit 205. , A block read label normal end process 603, and a block read label error end process 604, which can be called from other portions belonging to.

【0065】ブロック読み出し用ラベル管理域601
は、上位層装置101から要求された、処理中の一つの
ブロック読み出し送信要求を実現するために送信するブ
ロック読み出し要求パケットに付けた全てのラベルを保
持する部分である。ブロック読み出し用ラベル管理域6
01は、通信手順が許容する全てのラベルについて、ラ
ベルがブロック読み出し処理部205によって使用中で
あるかについての情報を保持し、また指定したラベルを
使用中として記録する機能と、使用中として記録されて
いるラベルの記録を未使用に戻す機能を持つ。ブロック
読み出し用ラベル管理域601はまた、使用中として記
録されているラベルが、ブロック読み出し用ラベル管理
域601が動作を開始して以降、何度目のブロック読み
出し用ラベル割り当て処理によって最初に使用中となっ
たかを示す連続番号を付けて管理する機能も持つ。
Block reading label management area 601
Is a part for holding all labels attached to a block read request packet transmitted to realize one block read transmission request being processed, requested by the upper layer device 101. Block read label management area 6
01 holds information on whether or not the label is in use by the block read processing unit 205 for all the labels permitted by the communication procedure, records the specified label as being used, and records as the used label. It has a function to return the record of the label being used to unused. Further, the label recorded as being used in the block read label management area 601 indicates that the label being used is initially used by the block read label allocation processing for the third time since the operation of the block read label management area 601 started. It also has a function of assigning a serial number to indicate whether or not it has been managed.

【0066】ブロック読み出し用ラベル割り当て処理6
02は、ブロック読み出し用ラベル管理域601にラベ
ルを使用中として記録するための処理である。ブロック
読み出し用ラベル割り当て処理602を呼び出すと、ブ
ロック読み出し用ラベル管理部301は、ラベル割り当
て処理502を行い、得られたラベルをブロック読み出
し用ラベル管理域601に使用中として記録し、このラ
ベルを新たに割り当てたラベルとして呼び出し側に返す
処理を行う。また呼び出し側が割り当てを希望するラベ
ルを指定した場合は、そのラベルを指定してラベル割り
当て処理502を行い、ラベル管理部201がそのラベ
ルの割り当てに成功したかどうかを呼び出し側に通知
し、ラベルの割り当てに成功した場合は、さらにそのラ
ベルをブロック読み出し用ラベル管理域601に使用中
として記録する処理を行う。
Block read label allocation processing 6
02 is a process for recording a label as being used in the block read label management area 601. When the block reading label allocation processing 602 is called, the block reading label management unit 301 performs the label allocation processing 502, records the obtained label as being used in the block reading label management area 601, and newly stores this label. Performs processing to return to the caller as the label assigned to. When the calling side specifies a label to be allocated, the label is specified and label allocation processing 502 is performed, and the label management unit 201 notifies the calling side whether or not the label allocation is successful, and If the allocation is successful, a process of recording the label as being used in the block read label management area 601 is further performed.

【0067】ブロック読み出し用ラベル通常終了処理6
03は、ブロック読み出し用ラベル管理域601に使用
中として記録されている、指定したラベルの使用を終了
するための処理である。呼び出し側が使用を終了したい
ラベルを指定してブロック読み出し用ラベル通常終了処
理603を呼び出すと、ブロック読み出し用ラベル管理
部301は、ラベル終了処理503を呼び出して、ラベ
ル管理域501の中にある指定されたラベルの記録と、
ブロック読み出し用ラベル管理域601の中にある指定
されたラベルの記録を、それぞれ未使用に戻す処理を行
う。ブロック読み出し用ラベル管理部301は、この結
果、ブロック読み出し用ラベル管理域601に使用中と
して記録されているラベルがなくなり、かつ、ブロック
読み出し要求送信制御部302が動作していないことに
より、一つのブロック読み出し送信要求を実現するため
に送信するパケット列の送信を既に終えていることが示
されている場合は、ブロック読み出し処理部205が、
今回のブロック読み出し送信要求の処理を完了したと判
断し、上位層装置101に当該要求の結果として正常終
了を通知し、ブロック読み出し処理部205に属する、
ブロック読み出し要求送信制御部302、ブロック読み
出し応答受信制御部303、そしてブロック読み出し用
ラベル管理部301自身を停止させる処理を行う。
Block read label normal end processing 6
03 is a process for terminating the use of the designated label, which is recorded as being used in the label management area 601 for block reading. When the calling side designates the label to be used and calls the block read label normal end processing 603, the block read label management unit 301 calls the label end processing 503 to specify the designated label in the label management area 501. Records of labels
The processing of returning the record of the designated label in the label management area for block reading 601 to unused is performed. As a result, the label management unit 301 for block reading has one label because there is no label recorded in use in the label management area 601 for block reading and the block reading request transmission control unit 302 is not operating. If it is indicated that the transmission of the packet sequence to be transmitted to realize the block read transmission request has already been completed, the block read processing unit 205
It determines that the processing of the current block read transmission request has been completed, notifies the upper layer device 101 of the normal end as a result of the request, and belongs to the block read processing unit 205.
A process for stopping the block read request transmission control unit 302, the block read response reception control unit 303, and the block read label management unit 301 itself is performed.

【0068】ブロック読み出し用ラベルエラー終了処理
604は、ブロック読み出し送信要求の処理中に何らか
のエラーが発生した場合に、ブロック読み出し用ラベル
管理域601に記録されている全てのラベルの使用を終
了し、上位層装置101にエラーを通知するための処理
である。呼び出し側がブロック読み出し用ラベルエラー
終了処理604を呼び出すと、ブロック読み出し用ラベ
ル管理部301は、ブロック読み出し用ラベル管理域6
01に使用中として記録されている全てのラベルについ
て、ラベル終了処理503を呼び出してラベル管理部2
01のラベルの記録を未使用に戻し、ブロック読み出し
用ラベル管理域601のラベルの記録も未使用に戻す処
理を行う。ブロック読み出し用ラベル管理部301は次
に、上位層装置101に今回のブロック読み出し送信要
求の結果としてエラーを通知し、ブロック読み出し処理
部205に属する、ブロック読み出し要求送信制御部3
02、ブロック読み出し応答受信制御部303、そして
ブロック読み出し用ラベル管理部301自身を停止させ
る処理を行う。
The block reading label error end processing 604 terminates the use of all labels recorded in the block reading label management area 601 when any error occurs during the processing of the block reading transmission request. This is a process for notifying the upper layer device 101 of an error. When the calling side invokes the block read label error end process 604, the block read label management unit 301 sends the block read label management area 6
01 for all the labels recorded as being in use in the label management unit 2
The process of returning the record of the label No. 01 to unused and the record of the label in the block management label management area 601 to the unused state is performed. Next, the block read label management unit 301 notifies the upper layer device 101 of an error as a result of the current block read transmission request, and the block read request transmission control unit 3 belonging to the block read processing unit 205.
02, a process of stopping the block read response reception control unit 303 and the block read label management unit 301 itself.

【0069】ブロック読み出し要求送信制御部302
は、上位層装置101からのブロック読み出し送信要求
を解析し、この要求が指定する転送速度を元に最大許容
ブロック長を算出し、この要求が読み出しを要求してい
るブロックを読み出すため、下位層のパケット送受信装
置104に対し、最大許容ブロック長に等しい長さを持
つブロックの読み出しを要求する0個以上のブロック読
み出し要求パケットと、最大許容ブロック長以下の長さ
を持つブロックの読み出しを要求する1個のブロック読
み出し要求パケットを、順に送信を要求する制御を行う
部分であり、図5(図2のブロック読み出し要求送信制
御部302の詳細を示す図)に示すように、ブロック読
み出し要求送信バッファ701を有し、ブロック読み出
し要求分割制御部702を備える。
Block read request transmission control section 302
Analyzes the block read transmission request from the upper layer device 101, calculates the maximum allowable block length based on the transfer rate specified by the request, and reads the block requested to be read by this request. Requesting the packet transmission / reception device 104 to read a block having a length equal to the maximum allowable block length, and requesting to read a block having a length equal to or less than the maximum allowable block length. This is a part for performing control to request transmission of one block read request packet in order. As shown in FIG. 5 (a diagram showing details of the block read request transmission control unit 302 in FIG. 2), a block read request transmission buffer 701, and a block read request division control unit 702.

【0070】ブロック読み出し要求送信バッファ701
は、1個のブロック読み出し要求パケットを保持する記
憶容量を持ち、ブロック読み出し要求送信制御部302
と下位層のパケット送受信装置104とからアクセス可
能なバッファである。ブロック読み出し要求送信制御部
302が、下位層のパケット送受信装置104にブロッ
ク読み出し要求パケットの送信を要求すると、下位層の
パケット送受信装置104は、ブロック読み出し要求送
信バッファ701を参照して、ブロック読み出し要求パ
ケットを送信する。IEEE1394が定義するブロッ
ク読み出し要求パケットの長さは20バイトであるた
め、ブロック読み出し要求送信バッファ701も20バ
イトの大きさを持つ。
Block read request transmission buffer 701
Has a storage capacity to hold one block read request packet, and the block read request transmission control unit 302
And a buffer that can be accessed from the lower layer packet transmitting / receiving apparatus 104. When the block read request transmission control unit 302 requests the lower layer packet transmitting / receiving device 104 to transmit a block read request packet, the lower layer packet transmitting / receiving device 104 refers to the block read request transmission buffer 701 to send a block read request packet. Send a packet. Since the length of the block read request packet defined by IEEE 1394 is 20 bytes, the block read request transmission buffer 701 also has a size of 20 bytes.

【0071】ブロック読み出し要求分割制御部702
は、ブロック読み出し要求送信制御部302に属し、ブ
ロック読み出し送信要求を実現するために送信するブロ
ック読み出し要求パケットの列の構成を行う部分であ
る。
Block read request division control unit 702
Is a part belonging to the block read request transmission control unit 302 and configured to form a sequence of block read request packets to be transmitted to realize the block read request.

【0072】ブロック読み出し要求分割制御部702は
最初に、ブロック読み出し要求送信制御部302から、
上位層装置101がブロック読み出し送信要求によって
読み出そうとしているブロックのアドレスとブロックの
長さの通知を受け、ブロックのアドレスを次に読み出す
アドレスとして、ブロックの長さを読み出すブロックの
残りの長さとして、それぞれ記憶する。また最大許容ブ
ロック長の通知を受け、これを記憶する。
The block read request division control unit 702 first sends the block read request transmission control unit 302
The upper layer device 101 is notified of the address of the block to be read and the block length by the block read transmission request, and the address of the block is taken as the next address to be read, and the length of the block to be read is the remaining length of the block. Are respectively stored. Further, it receives the notification of the maximum allowable block length and stores it.

【0073】ブロック読み出し要求分割制御部702は
以降、ブロック読み出し要求送信制御部302がブロッ
ク読み出し要求パケットの準備を要求する度に、ブロッ
ク読み出し要求送信バッファ701に適切な値を設定す
る作業を行う。ブロック読み出し要求分割制御部702
は、ブロック読み出し要求送信バッファ701に置かれ
たブロック読み出し要求パケットの中のブロックを読み
出すアドレスを指定する部分に、次に読み出すアドレス
として記憶している値を設定し、読み出すブロックの長
さを指定する部分に、読み出すブロックの残りの長さ
と、最大許容ブロック長のうち、いずれか小さい方の長
さを設定する。ブロック読み出し要求分割制御部702
は、設定を終えると、次に読み出すアドレスに読み出す
ブロックの長さとして指定した値を加え、読み出すブロ
ックの残りの長さからは読み出すブロックの長さとして
指定した値を減ずることにより、次にブロック読み出し
要求送信制御部302がブロック読み出し要求パケット
の準備を要求するときに備える。
Thereafter, each time the block read request transmission control unit 302 requests the preparation of a block read request packet, the block read request division control unit 702 performs an operation of setting an appropriate value in the block read request transmission buffer 701. Block read request division control unit 702
Sets the value stored as the next address to be read in the portion that specifies the block read address in the block read request packet placed in the block read request transmission buffer 701, and specifies the length of the block to be read. The smaller of the remaining length of the block to be read and the maximum allowable block length is set in the portion to be read. Block read request division control unit 702
After completing the setting, the value specified as the length of the block to be read is added to the address to be read next, and the value specified as the length of the block to be read is subtracted from the remaining length of the block to be read. This is prepared when the read request transmission control unit 302 requests preparation of a block read request packet.

【0074】次に、本発明によるブロック読み出し要求
送信の動作について図8を参照して説明する。図8は、
本発明によるブロック読み出し要求送信の動作を示すフ
ローチャートである。
Next, the operation of transmitting a block read request according to the present invention will be described with reference to FIG. FIG.
6 is a flowchart illustrating an operation of transmitting a block read request according to the present invention.

【0075】ブロック読み出し要求送信制御部302
は、送信要求解釈部204からのブロック読み出し送信
要求を受け入れた時点で動作を開始する(図8のステッ
プ1001)。
Block read request transmission control section 302
Starts the operation when it receives the block read transmission request from the transmission request interpretation unit 204 (step 1001 in FIG. 8).

【0076】ブロック読み出し要求送信制御部302は
最初に、上位層装置101からのブロック読み出し送信
要求を解析し、この要求が指定する転送速度を元に最大
許容ブロック長を算出し、ブロック読み出し応答受信制
御部303の動作を開始させて、上位層装置101がブ
ロック読み出し送信要求によって読み出したブロックを
格納するために用意した領域のRAM102上の位置
と、上位層装置101がブロック読み出し送信要求によ
って読み出そうとしているブロックのアドレスと長さと
を、ブロック読み出し要求分割制御部702に記憶させ
る。
The block read request transmission control unit 302 first analyzes a block read transmission request from the upper layer device 101, calculates a maximum allowable block length based on the transfer speed specified by the request, and receives a block read response. The operation of the control unit 303 is started, the position on the RAM 102 of the area prepared for storing the block read by the upper layer device 101 in response to the block read transmission request, and the upper layer device 101 reading out the block in response to the block read transmission request. The block read request division control unit 702 stores the address and the length of the block to be read.

【0077】ブロック読み出し要求送信制御部302は
次に、上位層装置101がブロック読み出し送信要求に
おいて指定したラベルを、ブロック読み出し用ラベル割
り当て処理602を使用して、使用中として記録し、こ
のラベルの付いたブロック読み出し要求パケットを、ブ
ロック読み出し要求送信バッファ701に作成する。ブ
ロック読み出し要求送信制御部302はさらに、ブロッ
ク読み出し要求分割制御部702に、最初のブロック読
み出し要求パケットの準備を要求する。ブロック読み出
し要求分割制御部702は、ブロック読み出し要求送信
バッファ701のブロック読み出し要求パケットの中
の、ブロックを読み出すアドレスと、読み出すブロック
の長さの部分を設定し、最初のブロック読み出し要求パ
ケットの準備を完了させる(ステップ1002)。
Next, the block read request transmission control unit 302 records the label specified by the upper layer device 101 in the block read transmission request as being in use by using the block read label allocation process 602, and records this label. The attached block read request packet is created in the block read request transmission buffer 701. The block read request transmission control unit 302 further requests the block read request division control unit 702 to prepare the first block read request packet. The block read request division control unit 702 sets the address of the block read request and the length of the block to be read in the block read request packet of the block read request transmission buffer 701, and prepares the first block read request packet. It is completed (step 1002).

【0078】ブロック読み出し要求送信制御部302は
次に、下位層のパケット送受信装置104に、ステップ
1002においてブロック読み出し要求送信バッファ7
01に作成された、1個のブロック読み出し要求パケッ
トの送信を要求する(ステップ1003)。ブロック読
み出し要求送信制御部302は、下位層のパケット送受
信装置104が送信の要求を受け入れないときは、同じ
要求パケットの送信を下位層のパケット送受信装置10
4に要求する処理を周期的に繰り返し、送信の要求が受
け入れられるまで、処理をステップ1004に進めな
い。
Next, the block read request transmission control section 302 sends the block read request transmission buffer 7 to the lower layer packet transmitting / receiving apparatus 104 in step 1002.
A request is made for transmission of one block read request packet created at step 01 (step 1003). When the lower layer packet transmitting / receiving apparatus 104 does not accept the transmission request, the block read request transmission control unit 302 transmits the same request packet to the lower layer packet transmitting / receiving apparatus 10.
4 is periodically repeated, and the process does not proceed to step 1004 until the transmission request is accepted.

【0079】ブロック読み出し要求送信制御部302は
次に、ブロック読み出し要求分割制御部702に、次の
ブロック読み出し要求パケットの準備を要求する。ブロ
ック読み出し要求分割制御部702は、次に送信するブ
ロック読み出し要求パケットがあれば、ブロック読み出
し要求送信バッファ701のうち、ブロックを読み出す
アドレスと、読み出すブロックの長さの部分を再設定す
ることにより、ラベルの部分を除き、次のブロック読み
出し要求パケットの準備を完了させる(ステップ100
4→ステップ1005)。
Next, the block read request transmission control unit 302 requests the block read request division control unit 702 to prepare for the next block read request packet. If there is a block read request packet to be transmitted next, the block read request division control unit 702 resets the address of the block read request and the length of the block to be read out of the block read request transmission buffer 701 by resetting. The preparation of the next block read request packet is completed except for the label part (step 100).
4 → Step 1005).

【0080】ブロック読み出し要求送信制御部302は
次に、ステップ1003で下位層のパケット送受信装置
104に送信を要求したブロック読み出し要求パケット
に対応する認識パケットの受信を、下位層のパケット送
受信装置104がブロック読み出し要求送信制御部30
2に通知するのを待つ(ステップ1006またはステッ
プ1007)。下位層のパケット送受信装置104によ
る認識パケットの受信の通知は、ブロック読み出し要求
送信制御部302がステップ1003の動作を行った
後、ステップ1006またはステップ1007の動作を
行うよりも前に発生することがあり、その場合、ブロッ
ク読み出し要求送信制御部302は、ステップ1006
またはステップ1007の処理をすぐに終え、次に移
る。
Next, the block read request transmission control unit 302 receives the recognition packet corresponding to the block read request packet that has requested the lower layer packet transmitting / receiving apparatus 104 to transmit in step 1003, and the lower layer packet transmitting / receiving apparatus 104 Block read request transmission control unit 30
Wait for notification to the second (step 1006 or 1007). The notification of the reception of the recognition packet by the lower layer packet transmitting / receiving apparatus 104 may occur after the block read request transmission control unit 302 performs the operation of step 1003 and before performing the operation of step 1006 or 1007. Yes, in this case, the block read request transmission control unit 302
Alternatively, the process of step 1007 is immediately completed, and the process proceeds to the next.

【0081】ブロック読み出し要求送信制御部302は
次に、ステップ1006またはステップ1007で通知
された認識パケットの内容が「保留」であった場合は、
次に送信するブロック読み出し要求パケットがなければ
活動を停止する(ステップ1011)が、そうでなけれ
ばブロック読み出し用ラベル管理部301のブロック読
み出し用ラベル割り当て処理602を行い、得られたラ
ベルをブロック読み出し要求送信バッファ701に置か
れたブロック読み出し要求パケットに付け(ステップ1
008)、次のブロック読み出し要求パケットの準備を
完了させる。ブロック読み出し要求送信制御部302
は、全てのラベルが割り当て済みのため、ブロック読み
出し用ラベル管理部301がラベルを割り当てることが
できない場合は、周期的にブロック読み出し用ラベル割
り当て処理602を呼び出し、いずれかのラベルの使用
が終了して、ラベルが割り当てられるのを待ち(ステッ
プ1009)、得られたラベルをブロック読み出し要求
送信バッファ701に置かれたブロック読み出し要求パ
ケットに付け(ステップ1008)、次のブロック読み
出し要求パケットの準備を完了させる。ブロック読み出
し要求送信制御部302は、ブロック読み出し要求パケ
ットの準備が完了すると、ステップ1003に戻って、
この要求パケットの送信を要求し、以下同様の処理を繰
り返す。
Next, if the content of the recognition packet notified in step 1006 or step 1007 is “pending”,
If there is no block read request packet to be transmitted next, the activity is stopped (step 1011), but if not, the block read label allocation processing 602 of the block read label management unit 301 is performed, and the obtained label is read as a block. Attached to the block read request packet placed in the request transmission buffer 701 (step 1
008), preparation for the next block read request packet is completed. Block read request transmission control unit 302
When the label management unit 301 for block reading cannot allocate a label because all the labels have already been allocated, the label management unit 602 periodically calls the label allocation processing 602 for block reading, and the use of one of the labels ends. And waits for a label to be assigned (step 1009), attaches the obtained label to the block read request packet placed in the block read request transmission buffer 701 (step 1008), and completes preparation for the next block read request packet. Let it. When the preparation of the block read request packet is completed, the block read request transmission control unit 302 returns to step 1003,
The transmission of the request packet is requested, and the same processing is repeated thereafter.

【0082】ブロック読み出し要求送信制御部302は
また、ステップ1006またはステップ1007で通知
された認識パケットの内容が「エラー」であった場合
は、ブロック読み出し用ラベル管理部301のブロック
読み出し用ラベルエラー終了処理604を行う(ステッ
プ1010)。ブロック読み出し用ラベル管理部301
は、上位層装置101に今回のブロック読み出し送信要
求の結果としてエラーを通知し、ブロック読み出し要求
送信制御部302を含む、ブロック読み出し処理部20
5に属する各部分を停止させる(ステップ1011)。
If the content of the recognition packet notified in step 1006 or step 1007 is “error”, the block read request transmission control section 302 terminates the block read label error in the block read label management section 301. The process 604 is performed (Step 1010). Block reading label management unit 301
Notifies the upper layer device 101 of an error as a result of the current block read request, and includes the block read request transmission control unit 302 and the block read processing unit 20.
5 are stopped (step 1011).

【0083】ブロック読み出し応答受信制御部303
は、下位層のパケット送受信装置104が受信した、ブ
ロック読み出し送信要求パケットに対応する応答パケッ
トを解析し、この応答パケットが含むブロックの内容
を、上位層装置が指定したRAM102上の領域内の適
切な位置にコピーし、この応答パケットに付けられたラ
ベルの使用を終了する処理を行う部分である。
Block read response reception control section 303
Analyzes the response packet corresponding to the block read transmission request packet received by the lower layer packet transmission / reception device 104, and stores the contents of the block included in the response packet in the area on the RAM 102 designated by the upper layer device. This is a part that performs processing for copying to a proper position and terminating the use of the label attached to the response packet.

【0084】ブロック読み出し応答受信制御部303
は、ブロック読み出し要求送信制御部302が上位層装
置101からのブロック読み出し送信要求を解析した
後、ブロック読み出し要求送信制御部302により動作
を開始させられる。ブロック読み出し応答受信制御部3
03はこのときブロック読み出し要求送信制御部302
より、ブロック読み出し要求送信制御部302が算出し
た最大許容ブロック長と、上位層装置101が読み出し
たブロックを格納するためにRAM102上に用意した
領域の先頭のアドレスの通知を受け、記憶する。
Block read response reception control section 303
After the block read request transmission control unit 302 analyzes the block read transmission request from the upper layer device 101, the operation is started by the block read request transmission control unit 302. Block read response reception control unit 3
03 is a block read request transmission control unit 302 at this time.
Thus, it receives and stores the maximum allowable block length calculated by the block read request transmission control unit 302 and the start address of the area prepared on the RAM 102 for storing the block read by the upper layer device 101.

【0085】ブロック読み出し応答受信制御部303は
最初に、下位層のパケット送受信装置104がブロック
読み出し要求パケットに対応する応答パケットを受信し
たかどうかを周期的に調べるループに入る。
First, the block read response control section 303 enters a loop for periodically checking whether or not the lower layer packet transmitting / receiving apparatus 104 has received a response packet corresponding to the block read request packet.

【0086】ブロック読み出し応答受信制御部303
は、下位層のパケット送受信装置104がブロック読み
出し要求パケットに対応する応答パケットを受信したこ
とを確認したならば、この応答パケットを解析し、この
応答パケットに付いているラベルを得、ブロック読み出
し要求用ラベル管理部201がこのラベルに付けた連続
番号を得る。
Block read response reception control section 303
When it is confirmed that the lower layer packet transmitting / receiving apparatus 104 has received a response packet corresponding to the block read request packet, the lower layer packet analyzer analyzes the response packet, obtains a label attached to the response packet, The serial number assigned to this label by the label management unit 201 is obtained.

【0087】ブロック読み出し応答受信制御部303は
次に、この連続番号と最大許容ブロック長とから、この
応答パケットが持つブロックが、上位層装置101が読
み出しを要求しているブロックの、どの部分に相当する
かを求める。ブロック読み出し要求送信制御部302
は、最大許容ブロック長を読み出す0個以上のブロック
読み出し要求パケットと、最大許容ブロック長以下を読
み出す1個のブロック読み出し要求パケットを順に送信
するので、連続番号により最初に送信したブロック読み
出し要求パケットに対応する応答と分かる応答パケット
が持つブロックは、ブロックの先頭の部分であり、2番
目に送信したブロック読み出し要求パケットに対応する
応答パケットが持つブロックは、ブロックの先頭+最大
許容ブロック長から始まる部分であり、同様にして連続
番号と最大許容ブロック長により、応答パケットが持つ
ブロックが、読み出すブロック全体のどの部分に相当す
るかが一意に定まる。ブロック読み出し応答受信制御部
303は、応答パケットが持つブロックの内容を、上位
層装置101が読み出したブロックを格納するためにR
AM102上に用意した領域の求めた部分にコピーす
る。
The block read response control unit 303 then determines, based on the serial number and the maximum allowable block length, which part of the block that the higher layer Ask for the equivalent. Block read request transmission control unit 302
Transmits, in order, zero or more block read request packets for reading the maximum allowable block length and one block read request packet for reading the maximum allowable block length or less. The block of the response packet that is known to be the corresponding response is the head of the block, and the block of the response packet corresponding to the second transmitted block read request packet is the part that starts from the head of the block + the maximum allowable block length. Similarly, the serial number and the maximum allowable block length uniquely determine which part of the entire block to be read corresponds to the block of the response packet. The block read response reception control unit 303 stores the content of the block included in the response packet into an R to store the block read by the upper layer device 101.
Copy is made to the determined part of the area prepared on the AM 102.

【0088】ブロック読み出し応答受信制御部303
は、ブロック読み出し用ラベル管理部301に、この応
答パケットに付けられたラベルを通知して、ブロック読
み出し用ラベル通常終了処理603を行う。但し、応答
パケットがエラーを示す内容である場合は、ブロック読
み出し用ラベル管理部301のブロック読み出し用ラベ
ルエラー終了処理604を行う。この場合、ブロック読
み出し用ラベル管理部301は、上位層装置101に今
回のブロック読み出し送信要求の結果としてエラーを通
知し、ブロック読み出し処理部205に属する各部分を
停止させる。
Block read response reception control section 303
Notifies the block read label management unit 301 of the label attached to the response packet, and performs the block read label normal end process 603. However, if the response packet indicates an error, the block reading label error ending process 604 of the block reading label management unit 301 is performed. In this case, the block read label management unit 301 notifies the upper layer device 101 of an error as a result of the current block read transmission request, and stops each part belonging to the block read processing unit 205.

【0089】ブロック読み出し応答受信制御部303
は、以上の処理を経てなお、ブロック読み出し応答受信
制御部303が動作しているなら、ブロック読み出し要
求パケットに対応する応答パケットの受信を再び待ち、
以下同様の動作を繰り返す。
Block read response reception control section 303
After the above processing, if the block read response reception control unit 303 is still operating, it waits again for reception of a response packet corresponding to the block read request packet,
Hereinafter, the same operation is repeated.

【0090】ブロック書き込み処理部207は、ブロッ
ク書き込み送信要求と、それに対応する応答を管理する
ための部分であり、ブロック書き込み要求送信制御部4
02、ブロック書き込み応答受信制御部403、ブロッ
ク書き込み用ラベル管理部401の各部分からなる。ブ
ロック書き込み要求送信制御部402、ブロック書き込
み応答受信制御部403、ブロック書き込み用ラベル管
理部401の各部分のうち、一つでも動作していれば、
ブロック書き込み処理部207は動作していると見なさ
れる。一つも動作していなければ、ブロック書き込み処
理部207は動作していないと見なされる。一つのブロ
ック書き込み処理部は、一つのブロック書き込み要求し
か管理することができないので、既に動作しているブロ
ック書き込み処理部207は、新たなブロック書き込み
送信要求を受け入れない。
The block write processing unit 207 is a part for managing a block write transmission request and a response corresponding thereto.
02, a block write response reception control unit 403, and a block write label management unit 401. If at least one of the block write request transmission control unit 402, block write response reception control unit 403, and block write label management unit 401 is operating,
The block write processing unit 207 is considered to be operating. If none is operating, it is considered that the block write processing unit 207 is not operating. Since one block write processing unit can manage only one block write request, the already operating block write processing unit 207 does not accept a new block write transmission request.

【0091】ブロック書き込み用ラベル管理部401
は、ブロック書き込み処理部207に属する、ブロック
書き込み送信要求を実現するために送信するブロック送
信要求パケットに付けるラベルを管理する部分であり、
図6に示すように、ブロック書き込み用ラベル管理域8
01を有し、ブロック書き込み処理部207に属する他
の部分から呼び出し可能な、ブロック書き込み用ラベル
割り当て処理802、ブロック書き込み用ラベル通常終
了処理803、ブロック書き込み用ラベルエラー終了処
理804の各処理を提供する。
Block writing label management unit 401
Is a part belonging to the block write processing unit 207, which manages a label attached to a block transmission request packet transmitted to realize a block write transmission request,
As shown in FIG. 6, the label management area 8 for block writing
01, which can be called from another part belonging to the block write processing unit 207, and provides each of a block write label allocation process 802, a block write label normal end process 803, and a block write label error end process 804. I do.

【0092】ブロック書き込み用ラベル管理域801
は、上位層装置101から指示された、処理中の一つの
ブロック書き込み送信要求を実現するために送信するパ
ケットに付けた全てのラベルを保持する部分である。ブ
ロック書き込み用ラベル管理域801は、通信手順が許
容する全てのラベルについて、任意のラベルがブロック
書き込み処理部207によって使用中であるかについて
の情報を保持し、また任意のラベルを使用中として記録
する機能と、使用中として記録されているラベルの記録
を未使用に戻す機能を持つ。ブロック書き込み用ラベル
管理域801は、ブロック読み出し用ラベル管理部30
1と異なり、ラベルに連続番号を付けて管理する機能は
持たない。
Block write label management area 801
Is a part for holding all labels attached to a packet to be transmitted in order to realize one block write transmission request being processed instructed by the upper layer device 101. The block write label management area 801 holds information on whether any label is in use by the block write processing unit 207 for all labels permitted by the communication procedure, and records that any label is in use. And a function of returning the label record recorded as being used to unused. The block write label management area 801 includes the block read label management unit 30.
Unlike 1, No. does not have a function of assigning a serial number to a label and managing it.

【0093】ブロック書き込み用ラベル割り当て処理8
02は、ブロック書き込み用ラベル管理域801にラベ
ルを使用中として記録するための処理である。ブロック
書き込み用ラベル割り当て処理802を呼び出すと、ブ
ロック書き込み用ラベル管理部401は、ラベル割り当
て処理502を行い、得られたラベルをブロック書き込
み用ラベル管理域801に使用中として記録し、このラ
ベルを新たに割り当てたラベルとして呼び出し側に返す
処理を行う。また呼び出し側が割り当てを希望するラベ
ルを指定した場合は、そのラベルを指定してラベル割り
当て処理502を行い、ラベル管理部201がそのラベ
ルの割り当てに成功したかどうかを呼び出し側に通知
し、ラベルの割り当てに成功した場合は、さらにそのラ
ベルをブロック書き込み用ラベル管理域801に使用中
として記録する処理を行う。
Block write label allocation processing 8
02 is a process for recording a label in use in the block write label management area 801. When the block write label allocation processing 802 is called, the block write label management unit 401 performs the label allocation processing 502, records the obtained label as being used in the block write label management area 801 and newly writes this label. Performs processing to return to the caller as the label assigned to. When the calling side specifies a label to be allocated, the label is specified and label allocation processing 502 is performed, and the label management unit 201 notifies the calling side whether or not the label allocation is successful, and If the allocation is successful, a process of recording the label as being used in the block write label management area 801 is performed.

【0094】ブロック書き込み用ラベル通常終了処理8
03は、ブロック書き込み用ラベル管理域801に使用
中として記録されている、指定したラベルの使用を終了
するための処理である。呼び出し側が使用を終了したい
ラベルを指定してブロック書き込み用ラベル通常終了処
理803を呼び出すと、ブロック書き込み用ラベル管理
部401は、ラベル終了処理503を呼び出して、ラベ
ル管理域501の中にある指定されたラベルの記録と、
ブロック書き込み用ラベル管理域801の中にある指定
されたラベルの記録を、それぞれ未使用に戻す処理を行
う。ブロック書き込み用ラベル管理部401は、この結
果、ブロック書き込み用ラベル管理域801に使用中と
して記録されているラベルがなくなり、かつ、ブロック
書き込み要求送信制御部402が動作していないことに
より、一つのブロック書き込み送信要求を実現するため
に送信するパケット列の送信を既に終えていることが示
されている場合は、ブロック書き込み処理部207が、
今回のブロック書き込み送信要求の処理を完了したと判
断し、上位層装置101に当該要求の結果として正常終
了を通知し、ブロック書き込み処理部207に属する、
ブロック書き込み要求送信制御部402、ブロック書き
込み応答受信制御部403、そしてブロック書き込み用
ラベル管理部401自身を停止させる処理を行う。
Block write label normal end processing 8
03 is a process for terminating the use of the designated label recorded as being used in the block write label management area 801. When the calling side designates a label to end use and calls the block write label normal end process 803, the block write label management unit 401 calls the label end process 503 to specify the designated label in the label management area 501. Records of labels
The processing of returning the records of the designated labels in the label management area 801 for block writing to unused is performed. As a result, the label that has been recorded as being used in the block write label management area 801 disappears, and the block write request transmission control unit 402 does not operate. If it is indicated that the transmission of the packet sequence to be transmitted to realize the block write transmission request has already been completed, the block write processing unit 207 performs
It determines that the processing of the current block write transmission request has been completed, notifies the upper layer device 101 of the normal end as a result of the request, and belongs to the block write processing unit 207.
A block write request transmission control unit 402, a block write response reception control unit 403, and a process of stopping the block write label management unit 401 itself are performed.

【0095】ブロック書き込み用ラベルエラー終了処理
804は、ブロック書き込み送信要求の処理中に何らか
のエラーが発生した場合に、ブロック書き込み用ラベル
管理域801に記録されている全てのラベルの使用を終
了し、上位層装置101にエラーを通知するための処理
である。呼び出し側がブロック書き込み用ラベルエラー
終了処理804を呼び出すと、ブロック書き込み用ラベ
ル管理部401は、ブロック書き込み用ラベル管理域8
01に使用中として記録されている全てのラベルについ
て、ラベル終了処理503を呼び出してラベル管理部2
01のラベルの記録を未使用に戻し、ブロック書き込み
用ラベル管理域801のラベルの記録も未使用に戻す処
理を行う。ブロック書き込み用ラベル管理部401は次
に、上位層装置101に今回のブロック書き込み送信要
求の結果としてエラーを通知し、ブロック書き込み処理
部207に属する、ブロック書き込み要求送信制御部4
02、ブロック書き込み応答受信制御部403、そして
ブロック書き込み用ラベル管理部401自身を停止させ
る処理を行う。
The block write label error end processing 804 ends the use of all labels recorded in the block write label management area 801 when any error occurs during the processing of the block write transmission request. This is a process for notifying the upper layer device 101 of an error. When the calling side invokes the block write label error end process 804, the block write label management unit 401 sends the block write label management area 8
01 for all the labels recorded as being in use in the label management unit 2
The process of returning the record of the label No. 01 to unused and returning the record of the label in the label management area 801 for block writing to unused is also performed. Next, the block write label management unit 401 notifies the upper layer device 101 of an error as a result of the current block write transmission request, and the block write request transmission control unit 4 belonging to the block write processing unit 207.
02, the block write response reception control unit 403 and the block write label management unit 401 themselves are stopped.

【0096】ブロック書き込み要求送信制御部402
は、上位層装置101からのブロック書き込み送信要求
を解析し、この要求が指定する転送速度を元にパケット
の最大許容長を算出し、この要求が書き込みを要求して
いるブロックを、パケットの最大許容長に等しい長さを
持つ0個以上のブロック書き込み要求パケットと、パケ
ットの最大許容長以下の長さを持つ1個のブロック書き
込み要求パケットに分割し、得られる一連のパケットの
列を、下位層のパケット送受信装置104に対し、順に
送信を要求する制御を行う部分であり、図7(図2のブ
ロック書き込み要求送信制御部402の詳細を示す図)
に示すように、ブロック書き込み要求送信バッファ90
1を有し、ブロック書き込み要求分割制御部902を備
える。
Block write request transmission control section 402
Analyzes the block write transmission request from the upper layer device 101, calculates the maximum allowable length of the packet based on the transfer rate specified by the request, and determines the block that this request requires writing to the maximum The block is divided into zero or more block write request packets having a length equal to the allowable length, and one block write request packet having a length equal to or less than the maximum allowable length of the packet. FIG. 7 (a diagram showing the details of the block write request transmission control unit 402 in FIG. 2).
As shown in FIG.
1 and a block write request division control unit 902.

【0097】ブロック書き込み要求送信バッファ901
は、1個のブロック書き込み要求パケットを保持する記
憶容量を持ち、ブロック書き込み要求送信制御部402
と、下位層のパケット送受信装置104からアクセス可
能なバッファである。ブロック書き込み要求送信制御部
402が、下位層のパケット送受信装置104にブロッ
ク書き込み要求パケットの送信を要求すると、下位層の
パケット送受信装置104は、ブロック書き込み要求送
信バッファ901を参照して、ブロック書き込み要求パ
ケットを送信する。IEEE1394が定義するブロッ
ク書き込み要求パケットは可変長であり、最長の場合、
24バイト+最大許容ブロック長の長さを持つため、ブ
ロック書き込み要求送信バッファ901もこれを保持し
得る大きさを持つ。また、IEEE1394が定義する
ブロック書き込み要求パケットは、パケットヘッダと呼
ばれる20バイトの固定長の部分と、データブロックと
呼ばれる可変長の部分とに分かれているため、ブロック
書き込み要求送信バッファ901も同様に、パケットヘ
ッダ903とデータブロック904に分かれている。
Block write request transmission buffer 901
Has a storage capacity to hold one block write request packet, and the block write request transmission control unit 402
And a buffer that can be accessed from the packet transmitting / receiving device 104 in the lower layer. When the block write request transmission control unit 402 requests the lower layer packet transmitting / receiving device 104 to transmit a block write request packet, the lower layer packet transmitting / receiving device 104 refers to the block write request transmission buffer 901 to send a block write request packet. Send a packet. The block write request packet defined by IEEE 1394 has a variable length.
Since it has a length of 24 bytes + the maximum allowable block length, the block write request transmission buffer 901 also has a size capable of holding this. The block write request packet defined by IEEE 1394 is divided into a fixed-length portion of 20 bytes called a packet header and a variable-length portion called a data block. It is divided into a packet header 903 and a data block 904.

【0098】ブロック書き込み要求分割制御部902
は、ブロック書き込み要求送信制御部402に属し、ブ
ロック書き込み送信要求を実現するために送信するブロ
ック書き込み要求パケットの列の構成を行う部分であ
る。
Block write request division control unit 902
Is a part belonging to the block write request transmission control unit 402 and configured to form a sequence of block write request packets to be transmitted to realize the block write request.

【0099】ブロック書き込み要求分割制御部902は
最初に、ブロック書き込み要求送信制御部402から、
上位層装置101がブロック書き込み送信要求によって
書き込もうとしているブロックを書き込むアドレスとブ
ロックの長さ、ブロックのデータが書かれたRAM10
2上の先頭位置の通知を受け、ブロックを書き込むアド
レスを次に書き込むアドレスとして、ブロックの長さを
書き込むブロックの残りの長さとして、ブロックのデー
タが書かれたRAM102上の先頭位置を次のブロック
の位置として、それぞれ記憶する。また最大許容ブロッ
ク長の通知を受け、これを記憶する。
The block write request division control unit 902 first sends the block write request transmission control unit 402
The RAM 10 in which the address, the length of the block, and the data of the block in which the upper layer device 101 writes the block to be written by the block write transmission request are written.
2 is notified of the start position of the block, the address of the block to be written is set as the next write address, the length of the block is set as the remaining length of the block, and the start position of the block 102 on which the data of the block is written is set as the next position. Each is stored as a block position. Further, it receives the notification of the maximum allowable block length and stores it.

【0100】ブロック書き込み要求分割制御部902は
以降、ブロック書き込み要求送信制御部402がブロッ
ク書き込み要求パケットの準備を要求する度に、ブロッ
ク書き込み要求送信バッファ901に適切な値を設定す
る作業を行う。ブロック書き込み要求分割制御部902
は、ブロック書き込み要求送信バッファ901のパケッ
トヘッダ903の中のブロックを書き込むアドレスを指
定する部分に、次に書き込むアドレスとして記憶してい
る値を設定し、書き込むブロックの長さを指定する部分
に、書き込むブロックの残りの長さと、最大許容ブロッ
ク長のうち、いずれか小さいほうの長さを設定する。
Thereafter, the block write request division control unit 902 performs an operation of setting an appropriate value in the block write request transmission buffer 901 every time the block write request transmission control unit 402 requests preparation of a block write request packet. Block write request division control unit 902
In the portion of the packet header 903 of the block write request transmission buffer 901 that specifies the address to write the block, the value stored as the next address to write is set, and the portion that specifies the length of the block to be written is The smaller of the remaining length of the block to be written and the maximum allowable block length is set.

【0101】ブロック書き込み要求分割制御部902は
さらに、次のブロックの位置として記憶しているRAM
102上の位置から、書き込むブロックの長さとして指
定した長さのデータを読み出し、ブロック書き込み要求
送信バッファ901のパケットのデータブロック904
の先頭からコピーする。ブロック書き込み要求分割制御
部902は、設定を終えると、次に書き込むアドレスに
書き込むブロックの長さとして指定した値を加え、書き
込むブロックの残りの長さからは書き込むブロックの長
さとして指定した値を減じ、次のブロックの位置に書き
込むブロックの長さとして指定した値を加えることによ
り、次にブロック書き込み要求送信制御部402がブロ
ック書き込み要求パケットの準備を要求するときに備え
る。
The block write request division control unit 902 further stores the RAM stored as the position of the next block.
The data having the length specified as the length of the block to be written is read from the position on the block 102, and the data block 904 of the packet in the block write request transmission buffer 901 is read.
Copy from the beginning of After completing the setting, the block write request division control unit 902 adds the value specified as the length of the block to be written to the address to be written next, and subtracts the value specified as the length of the block to be written from the remaining length of the block to be written. By subtracting the value and adding the value specified as the length of the block to be written to the position of the next block, the block write request transmission control unit 402 prepares for the next request for preparation of a block write request packet.

【0102】次に、本発明によるブロック書き込み要求
送信の動作について図9を参照して説明する。図9は、
本発明によるブロック書き込み要求送信の動作を示すフ
ローチャートである。
Next, the operation of transmitting a block write request according to the present invention will be described with reference to FIG. FIG.
5 is a flowchart illustrating an operation of transmitting a block write request according to the present invention.

【0103】ブロック書き込み要求送信制御部402
は、送信要求解釈部204からのブロック書き込み送信
要求を受け入れた時点で動作を開始する(図9のステッ
プ1101)。このとき、ブロック書き込み応答受信制
御部403と、ブロック書き込み用ラベル管理部401
も同時に動作を開始する。
Block write request transmission control section 402
Starts the operation when the block write transmission request from the transmission request interpretation unit 204 is accepted (step 1101 in FIG. 9). At this time, the block write response reception control unit 403 and the block write label management unit 401
Also starts operating at the same time.

【0104】ブロック書き込み要求送信制御部402は
最初に、上位層装置101からのブロック書き込み送信
要求を解析し、この要求が指定する転送速度を元にパケ
ットの最大許容長を算出し、上位層装置がブロック書き
込み送信要求によって書き込もうとしているブロックを
書き込むアドレスとブロックの長さ、ブロックのデータ
が書かれたRAM102上の先頭位置を、ブロック書き
込み要求分割制御部902に記憶させる。
The block write request transmission control unit 402 first analyzes a block write transmission request from the upper layer device 101, calculates a maximum allowable packet length based on the transfer speed specified by the request, and Causes the block write request division control unit 902 to store the address at which the block to be written by the block write transmission request is written, the length of the block, and the start position on the RAM 102 where the block data is written.

【0105】ブロック書き込み要求送信制御部402は
次に、上位層装置101がブロック書き込み送信要求に
おいて指定したラベルを、ブロック書き込み用ラベル割
り当て処理802を使用して、使用中として記録し、こ
のラベルの付いたパケットヘッダを、ブロック書き込み
要求送信バッファ901に作成する。ブロック書き込み
要求送信制御部402はさらに、ブロック書き込み要求
分割制御部902に、最初のブロック書き込み要求パケ
ットの準備を要求する。ブロック書き込み要求分割制御
部902は、ブロック書き込み要求送信バッファ901
のパケットヘッダ903のうち、ブロックを書き込むア
ドレスと、書き込むブロックの長さの部分を設定し、ブ
ロック書き込み要求送信バッファ901のパケットのデ
ータブロック904にRAM102からデータをコピー
することにより、最初のパケットの準備を完了させる
(ステップ1102)。
Next, the block write request transmission control unit 402 records the label specified by the upper layer device 101 in the block write transmission request as being in use by using the block write label allocation processing 802, and records this label. The attached packet header is created in the block write request transmission buffer 901. The block write request transmission control unit 402 further requests the block write request division control unit 902 to prepare a first block write request packet. The block write request division control unit 902 includes a block write request transmission buffer 901
Out of the packet header 903, the address of the block to be written and the length of the block to be written are set, and the data is copied from the RAM 102 to the data block 904 of the packet in the block write request transmission buffer 901 so that the The preparation is completed (step 1102).

【0106】ブロック書き込み要求送信制御部402は
次に、下位層のパケット送受信装置104に、前項まで
ブロック書き込み要求送信バッファ901に作成され
た、1個のブロック書き込み要求パケットの送信を要求
する(ステップ1103)。ブロック書き込み要求送信
制御部402は、下位層のパケット送受信装置104が
送信の要求を受け入れないときは、同じ要求パケットの
送信を下位層のパケット送受信装置104に要求する処
理を周期的に繰り返し、送信の要求が受け入れられるま
で、処理をステップ1104に進めない。ブロック書き
込み要求送信制御部402は、送信したブロック書き込
み要求パケットに対応する認識パケットを受け取るまで
の間、この要求パケットに付けたラベルを記憶してい
る。
Next, the block write request transmission control unit 402 requests the lower layer packet transmitting / receiving apparatus 104 to transmit one block write request packet created in the block write request transmission buffer 901 up to the preceding paragraph (step 1103). When the lower layer packet transmitting / receiving apparatus 104 does not accept the transmission request, the block write request transmission control unit 402 periodically repeats a process of requesting the lower layer packet transmitting / receiving apparatus 104 to transmit the same request packet. Until the request is accepted, the process does not proceed to step 1104. The block write request transmission control unit 402 stores the label attached to the request packet until a recognition packet corresponding to the transmitted block write request packet is received.

【0107】ブロック書き込み要求送信制御部402は
次に、ブロック書き込み要求分割制御部902に、次の
ブロック書き込み要求パケットの準備を要求する。ブロ
ック書き込み要求分割制御部902は、次に送信するブ
ロック書き込み要求パケットがあれば、ブロック書き込
み要求送信バッファ901のパケットヘッダ903のう
ち、ブロックを書き込むアドレスと、書き込むブロック
の長さの部分を再設定し、ブロック書き込み要求送信バ
ッファ901のパケットのデータブロック904にRA
M102からデータをコピーすることにより、ラベルの
部分を除き、次のブロック書き込み要求パケットの準備
を完了させる(ステップ1104→ステップ110
5)。
Next, the block write request transmission control unit 402 requests the block write request division control unit 902 to prepare for the next block write request packet. If there is a block write request packet to be transmitted next, the block write request division control unit 902 resets the block write address and the write block length in the packet header 903 of the block write request transmission buffer 901. Then, RA is added to the data block 904 of the packet in the block write request transmission buffer 901.
By copying the data from M102, the preparation of the next block write request packet is completed except for the label part (step 1104 → step 110).
5).

【0108】ブロック書き込み要求送信制御部402は
次に、ステップ1103で下位層のパケット送受信装置
104に送信を要求したブロック書き込み要求パケット
に対応する認識パケットの受信を、下位層のパケット送
受信装置104がブロック書き込み要求送信制御部40
2に通知するのを待つ(ステップ1106またはステッ
プ1107)。下位層のパケット送受信装置104によ
る認識パケットの受信の通知は、ブロック書き込み要求
送信制御部がステップ1103の動作を行った後、ステ
ップ1106またはステップ1107の動作を行うより
も前に発生することがあり、その場合、ブロック書き込
み要求送信制御部402は、ステップ1106またはス
テップ1107の処理をすぐに終え、次に移る。
Next, the block write request transmission control unit 402 receives the recognition packet corresponding to the block write request packet requested to be transmitted to the lower layer packet transmitting / receiving apparatus 104 in step 1103, and the lower layer packet transmitting / receiving apparatus 104 Block write request transmission control unit 40
Waiting for notification to the second (step 1106 or 1107). The notification of the reception of the recognition packet by the lower layer packet transmitting / receiving apparatus 104 may occur after the block write request transmission control unit performs the operation in step 1103 and before performing the operation in step 1106 or 1107. In this case, the block write request transmission control unit 402 immediately ends the processing of step 1106 or 1107, and proceeds to the next step.

【0109】ブロック書き込み要求送信制御部402は
次に、ステップ1106またはステップ1107で通知
された認識パケットの内容が「完了」であった場合は、
ブロック書き込み用ラベル管理部401に、ステップ1
103で送信したブロック書き込み要求パケットに付け
たラベルを通知して、ブロック書き込み用ラベル通常終
了処理803を行う(ステップ1110)。ブロック書
き込み要求送信制御部402は次に、ブロック書き込み
用ラベル割り当て処理802を行い、得られたラベルを
ブロック書き込み要求送信バッファ901に置かれたブ
ロック書き込み要求パケットに付け(ステップ110
8)、次のブロック書き込み要求パケットの準備を完了
させる。この場合、直前に送信された(ステップ110
3)ブロック書き込み要求パケットに付けられていたラ
ベルが、ブロック書き込み用ラベル通常終了処理803
の呼び出し(ステップ1110)により未使用状態にな
っているため、ブロック書き込み用ラベル管理部401
は、必ずラベルの割り当てに成功する。但し、次に送信
するブロック書き込み要求パケットがなければ、ブロッ
ク書き込み要求送信制御部402は、動作を停止し(ス
テップ1113)、ブロック書き込み用ラベル割り当て
処理802の呼び出しは行わない。ブロック書き込み要
求送信制御部402はまた、ステップ1106またはス
テップ1107で通知された認識パケットの内容が「保
留」であった場合は、次に送信するブロック書き込み要
求パケットがなければ活動を停止する(ステップ111
3)が、そうでなければブロック書き込み用ラベル管理
部401のブロック書き込み用ラベル割り当て処理80
2を行い、得られたラベルをブロック書き込み要求送信
バッファ901に置かれたブロック書き込み要求パケッ
トに付け(ステップ1108)、次のブロック書き込み
要求パケットの準備を完了させる。ブロック書き込み要
求送信制御部402は、全てのラベルが割り当て済みの
ため、ブロック書き込み用ラベル管理部401がラベル
を割り当てることができない場合は、周期的にブロック
書き込み用ラベル割り当て処理802を呼び出し、いず
れかのラベルの使用が終了して、ラベルが割り当てられ
るのを待つ(ステップ1109)。得られたラベルをブ
ロック書き込み要求送信バッファ901に置かれたブロ
ック書き込み要求パケットに付け(ステップ110
8)、次のブロック書き込み要求パケットの準備を完了
させる。
Next, if the content of the recognition packet notified in step 1106 or 1107 is “completed”, the block write request transmission control unit 402
Step 1 is added to the block write label management unit 401.
The label attached to the block write request packet transmitted in 103 is notified, and the block write label normal end processing 803 is performed (step 1110). Next, the block write request transmission control unit 402 performs a block write label allocation process 802, and attaches the obtained label to the block write request packet placed in the block write request transmission buffer 901 (step 110).
8), preparation for the next block write request packet is completed. In this case, it was transmitted immediately before (step 110).
3) The label attached to the block write request packet is changed to the block write label normal end processing 803
(Step 1110), the block writing label management unit 401 is in an unused state.
Always succeeds in label assignment. However, if there is no block write request packet to be transmitted next, the block write request transmission control unit 402 stops the operation (step 1113), and does not call the block write label allocation processing 802. If the content of the recognition packet notified in step 1106 or 1107 is “pending”, the block write request transmission control unit 402 stops the operation if there is no block write request packet to be transmitted next (step 111
3), otherwise, the block write label allocation processing 80 of the block write label management unit 401
2, the obtained label is added to the block write request packet placed in the block write request transmission buffer 901 (step 1108), and preparation for the next block write request packet is completed. The block write request transmission control unit 402 periodically calls the block write label allocation process 802 when the label management unit 401 cannot allocate a label because all the labels have been allocated. After the use of the label is completed, it waits for the label to be assigned (step 1109). The obtained label is added to the block write request packet placed in the block write request transmission buffer 901 (step 110).
8), preparation for the next block write request packet is completed.

【0110】ブロック書き込み要求送信制御部402は
また、ステップ1106またはステップ1107で通知
された認識パケットの内容が「エラー」であった場合
は、ブロック書き込み用ラベル管理部401のブロック
書き込み用ラベルエラー終了処理804を行う(ステッ
プ1111またはステップ1112)。ブロック書き込
み用ラベル管理部401は、上位層装置101に今回の
ブロック書き込み送信要求の結果としてエラーを通知
し、ブロック書き込み要求送信制御部402を含む、ブ
ロック書き込み処理部207に属する各部分を停止させ
る(ステップ1113)。
If the content of the recognition packet notified in step 1106 or 1107 is "error", the block write request transmission control unit 402 terminates the block write label error in the block write label management unit 401. The process 804 is performed (Step 1111 or Step 1112). The block write label management unit 401 notifies the upper layer device 101 of an error as a result of the current block write transmission request, and stops each part belonging to the block write processing unit 207 including the block write request transmission control unit 402. (Step 1113).

【0111】ブロック書き込み要求送信制御部402
は、以上の処理を経てなおブロック書き込み要求送信制
御部402が動作しているなら、ステップ1103に戻
って、ブロック書き込み要求送信バッファ901に準備
されているブロック書き込み要求パケットの送信を要求
し、以下同様の処理を繰り返す。
Block write request transmission control section 402
If the block write request transmission control unit 402 is still operating after the above processing, the process returns to step 1103 to request transmission of the block write request packet prepared in the block write request transmission buffer 901. The same processing is repeated.

【0112】ブロック書き込み応答受信制御部403
は、下位層のパケット送受信装置104が受信したブロ
ック書き込み要求パケットに対応する応答パケットを解
析し、この応答パケットに付けられたラベルの使用を終
了する処理を行う部分である。ブロック書き込み応答受
信制御部403は、ブロック書き込み要求送信制御部4
02が送信要求解釈部204からのブロック書き込み送
信要求を受け入れると、同時に動作を開始する。
Block write response reception control section 403
Is a part that analyzes a response packet corresponding to the block write request packet received by the lower layer packet transmitting / receiving apparatus 104 and terminates the use of the label attached to the response packet. The block write response reception control unit 403 includes the block write request transmission control unit 4
When 02 receives the block write transmission request from the transmission request interpretation unit 204, the operation starts at the same time.

【0113】ブロック書き込み応答受信制御部403は
最初に、下位層のパケット送受信装置104がブロック
書き込み要求パケットに対応する応答パケットを受信し
たかどうかを周期的に調べるループに入る。
First, the block write response reception control section 403 enters a loop for periodically checking whether or not the lower layer packet transmitting / receiving apparatus 104 has received a response packet corresponding to the block write request packet.

【0114】ブロック書き込み応答受信制御部403
は、下位層のパケット送受信装置104がブロック書き
込み要求パケットに対応する応答パケットを受信したこ
とを確認したならば、この応答パケットを解析し、ブロ
ック書き込み要求用ラベル管理部201に、この応答パ
ケットに付けられたラベルを通知して、ブロック書き込
み用ラベル通常終了処理803を行う。但し、応答パケ
ットがエラーを示す内容である場合は、ブロック書き込
み用ラベル管理部401のブロック書き込み用ラベルエ
ラー終了処理804を行う。この場合、ブロック書き込
み用ラベル管理部401は、上位層装置101に今回の
ブロック書き込み送信要求の結果としてエラーを通知
し、ブロック書き込み処理部207に属する各部分を停
止させる。ブロック書き込み応答受信制御部403は、
以上の処理を経てなお、ブロック書き込み応答受信制御
部403が動作しているなら、ブロック書き込み要求パ
ケットに対応する応答パケットの受信を再び待ち、以下
同様の動作を繰り返す。
Block write response reception control section 403
When it is confirmed that the lower layer packet transmitting / receiving apparatus 104 has received the response packet corresponding to the block write request packet, the lower packet analyzer 104 analyzes the response packet and sends the response packet to the block write request label management unit 201. The attached label is notified, and a block write label normal end process 803 is performed. However, if the response packet has an error, the block write label error ending process 804 of the block write label management unit 401 is performed. In this case, the block write label management unit 401 notifies the upper layer device 101 of an error as a result of the current block write transmission request, and stops each part belonging to the block write processing unit 207. The block write response reception control unit 403 includes:
If the block write response reception control unit 403 is still operating after the above processing, it waits again for the reception of a response packet corresponding to the block write request packet, and thereafter repeats the same operation.

【0115】[0115]

【発明の効果】上述した本発明のパケット送受信装置に
よれば、パケット送受信装置が備える要求パケット格納
用バッファには1個の要求パケットを保持する記憶容量
を持たせればよいため、要求パケット用バッファの記憶
容量を低減することができるという効果が得られる。
According to the above-described packet transmitting / receiving apparatus of the present invention, the request packet storing buffer provided in the packet transmitting / receiving apparatus only needs to have a storage capacity for holding one request packet. Has the effect that the storage capacity of the device can be reduced.

【0116】また、請求項2〜11のいずれかのパケッ
ト送受信装置によれば、分割された要求パケットを順次
バッファに格納するときに、宛先や転送速度のように各
要求パケットで同一の部分については最初のパケットの
ために準備したものを再利用し、そうでない差異の部分
のみを書き換えるようにしたため、少ないバッファの書
き換え回数で、一つの上位層装置の送信要求を構成する
複数の要求パケットの送信を行うことができるという効
果も有している。
According to the packet transmission / reception device of any one of claims 2 to 11, when the divided request packets are sequentially stored in the buffer, the same part of each request packet, such as the destination and the transfer speed, is used. Re-uses the one prepared for the first packet and rewrites only the difference parts that are not so, so that with a small number of buffer rewrites, There is also an effect that transmission can be performed.

【0117】また、請求項3〜11のいずれかのパケッ
ト送受信装置によれば、パケット送受信装置がパケット
の制限長を判断するようにしたため、上位層装置は使用
している通信手順におけるパケットの制限長に留意する
必要がないという効果も有している。
According to the packet transmitting / receiving apparatus of any one of claims 3 to 11, since the packet transmitting / receiving apparatus determines the limit length of the packet, the upper-layer apparatus restricts the packet in the communication procedure used. It also has the effect that it is not necessary to pay attention to the length.

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

【図1】本発明のパケット送受信装置と他装置によりI
EEE1394バスに接続するノードを構成した例を示
す図である。
FIG. 1 shows a packet transmitting / receiving apparatus of the present invention and another apparatus
FIG. 2 is a diagram illustrating an example in which a node connected to an EEE1394 bus is configured.

【図2】本発明の一実施の形態の構成を示すブロック図
である。
FIG. 2 is a block diagram showing a configuration of an embodiment of the present invention.

【図3】図2のラベル管理部201の詳細を示す図であ
る。
FIG. 3 is a diagram illustrating details of a label management unit 201 in FIG. 2;

【図4】図2のブロック読み出し用ラベル管理部301
の詳細を示す図である。
FIG. 4 is a block reading label management unit 301 of FIG. 2;
It is a figure which shows the detail of.

【図5】図2のブロック読み出し要求送信制御部302
の詳細を示す図である。
FIG. 5 is a block read request transmission control unit 302 of FIG. 2;
It is a figure which shows the detail of.

【図6】図2のブロック書き込み用ラベル管理部401
の詳細を示す図である。
6 is a block write label management unit 401 shown in FIG. 2;
It is a figure which shows the detail of.

【図7】図2のブロック書き込み要求送信制御部402
の詳細を示す図である。
FIG. 7 is a block write request transmission control unit 402 of FIG. 2;
It is a figure which shows the detail of.

【図8】本発明によるブロック読み出し要求送信の動作
を示すフローチャートである。
FIG. 8 is a flowchart showing an operation of transmitting a block read request according to the present invention.

【図9】本発明によるブロック書き込み要求送信の動作
を示すフローチャートである。
FIG. 9 is a flowchart showing an operation of transmitting a block write request according to the present invention.

【図10】従来の技術におけるデータ読み出し手順の例
を示す図である。
FIG. 10 is a diagram showing an example of a data reading procedure in a conventional technique.

【図11】従来の技術におけるデータ書き込み手順の例
を示す図である。
And FIG. 11 is a diagram showing an example of a data writing procedure in the related art.

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

101 上位層装置 102 RAM 103 パケット送受信装置 104 下位層のパケット送受信装置 201 ラベル管理部 202 一般要求送信制御部 203 一般応答受信制御部 204 送信要求解釈部 205 ブロック読み出し処理部 206 受信応答解釈部 207 ブロック書き込み処理部 301 ブロック読み出し用ラベル管理部 302 ブロック読み出し要求送信制御部 303 ブロック読み出し応答受信制御部 401 ブロック書き込み用ラベル管理部 402 ブロック書き込み要求送信制御部 403 ブロック書き込み応答受信制御部 501 ラベル管理域 502 ラベル割り当て処理 503 ラベル終了処理 504 ラベルタイムアウト処理 505 時計 601 ブロック読み出し用ラベル管理域 602 ブロック読み出し用ラベル割り当て処理 603 ブロック読み出し用ラベル通常終了処理 604 ブロック読み出し用ラベルエラー終了処理 701 ブロック読み出し要求送信バッファ 702 ブロック読み出し要求分割制御部 801 ブロック書き込み用ラベル管理域 802 ブロック書き込み用ラベル割り当て処理 803 ブロック書き込み用ラベル通常終了処理 804 ブロック書き込み用ラベルエラー終了処理 901 ブロック書き込み要求送信バッファ 902 ブロック書き込み要求分割制御部 903 パケットヘッダ 904 データブロック Reference Signs List 101 upper layer device 102 RAM 103 packet transmitting / receiving device 104 lower layer packet transmitting / receiving device 201 label management unit 202 general request transmission control unit 203 general response reception control unit 204 transmission request interpretation unit 205 block read processing unit 206 reception response interpretation unit 207 block Write processing unit 301 Block read label management unit 302 Block read request transmission control unit 303 Block read response reception control unit 401 Block write label management unit 402 Block write request transmission control unit 403 Block write response reception control unit 501 Label management area 502 Label allocation processing 503 Label end processing 504 Label timeout processing 505 Clock 601 Block reading label management area 602 Block reading label allocation Processing 603 Block read label normal end processing 604 Block read label error end processing 701 Block read request transmission buffer 702 Block read request division control unit 801 Block write label management area 802 Block write label allocation processing 803 Block write label normal End processing 804 Block write label error end processing 901 Block write request transmission buffer 902 Block write request division control unit 903 Packet header 904 Data block

Claims (11)

【特許請求の範囲】[Claims] 【請求項1】 非同期通信手順を用いてパケット通信を
行うパケット送受信装置であって、上位層装置からの送
信要求を1個または複数個の要求パケットの列に分割す
る第1の手段と、1個の要求パケットを保持する記憶容
量を持ったバッファと、列を構成する要求パケットを1
個ずつ前記バッファに順次格納し送信する第2の手段と
を有することを特徴とするパケット送受信装置。
1. A packet transmission / reception device for performing packet communication using an asynchronous communication procedure, comprising: first means for dividing a transmission request from an upper layer device into one or a plurality of request packet columns; A buffer having a storage capacity for holding the number of request packets and one
A packet transmission / reception apparatus, comprising: second means for sequentially storing the data in the buffer and transmitting the data sequentially.
【請求項2】 前記第2の手段は、前記分割された要求
パケットを順次前記バッファに格納するときに、列の2
番目以降の要求パケットについては、列の最初の要求パ
ケットとの差異の部分のみを書き換えるようにしたこと
を特徴とする請求項1記載のパケット送受信装置。
2. The method according to claim 1, wherein the second unit sequentially stores the divided request packets in the buffer when the divided request packets are stored in the buffer.
2. The packet transmission / reception apparatus according to claim 1, wherein only the difference between the first and second request packets in the sequence is different from the first request packet.
【請求項3】 パケットの長さを制限する規約を持つ非
同期通信手順を用いてパケット通信を行うパケット送受
信装置であって、上位層装置からの書き込み送信要求を
受けたときに、この送信要求を基にパケットの制限長を
算出する手段と、前記上位層装置からの送信要求を、前
記制限長を満たす1個または複数個の書き込み要求パケ
ットの列に分割する手段と、前記制限長と同じ長さの1
個の書き込み要求パケットを保持する記憶容量を持った
書き込み要求用バッファと、列を構成する書き込み要求
パケットを1個ずつ前記書き込み要求用バッファに順次
格納し送信する手段とを有することを特徴とするパケッ
ト送受信装置。
3. A packet transmitting / receiving apparatus for performing packet communication using an asynchronous communication procedure having a protocol for restricting the length of a packet. Means for calculating a limit length of a packet based on the request, means for dividing a transmission request from the upper layer device into one or a plurality of write request packet columns satisfying the limit length, and a length equal to the limit length. Sano 1
A write request buffer having a storage capacity for holding a plurality of write request packets, and means for sequentially storing and transmitting the write request packets constituting the columns one by one in the write request buffer. Packet transceiver.
【請求項4】 パケットの長さを制限する規約を持つ非
同期通信手順を用いてパケット通信を行うパケット送受
信装置であって、上位層装置からの読み出し送信要求を
受けたときに、この送信要求を基にパケットの制限長を
算出する手段と、前記上位層装置からの送信要求を、前
記制限長を満たす応答パケットが返信されるような1個
または複数個の読み出し要求パケットの列に分割する手
段と、1個の読み出し要求パケットを保持する記憶容量
を持った読み出し要求用バッファと、列を構成する読み
出し要求パケットを1個ずつ前記読み出し要求用バッフ
ァに順次格納し送信する手段とを有することを特徴とす
るパケット送受信装置。
4. A packet transmitting / receiving apparatus for performing packet communication using an asynchronous communication procedure having a protocol for limiting the length of a packet, wherein when a read transmission request is received from an upper layer apparatus, this transmission request is transmitted. Means for calculating a limit length of a packet based on the request, and means for dividing a transmission request from the upper layer device into one or a plurality of read request packet sequences such that a response packet satisfying the limit length is returned. A read request buffer having a storage capacity for holding one read request packet, and means for sequentially storing and transmitting read request packets constituting a column one by one in the read request buffer. A packet transmitting / receiving apparatus characterized by the following.
【請求項5】 パケットの長さを制限する規約を持つ非
同期通信手順を用いてパケット通信を行うパケット送受
信装置であって、 上位層装置からの書き込み送信要求を受けたときに、こ
の送信要求を基にパケットの制限長を算出する手段と、
前記上位層装置からの書き込み送信要求を、前記制限長
を満たす1個または複数個の書き込み要求パケットの列
に分割する手段と、前記制限長と同じ長さの1個の書き
込み要求パケットを保持する記憶容量を持った書き込み
要求用バッファと、列を構成する書き込み要求パケット
を1個ずつ前記書き込み要求用バッファに順次格納し送
信する手段とを備えた書き込み処理部と、 前記上位層装置からの読み出し送信要求を受けたとき
に、この送信要求を基にパケットの制限長を算出する手
段と、前記上位層装置からの読み出し送信要求を、前記
制限長を満たす応答パケットが返信されるような1個ま
たは複数個の読み出し要求パケットの列に分割する手段
と、1個の読み出し要求パケットを保持する記憶容量を
持った読み出し要求用バッファと、列を構成する読み出
し要求パケットを1個ずつ前記読み出し要求用バッファ
に順次格納し送信する手段とを備えた読み出し処理部と
を有することを特徴とするパケット送受信装置。
5. A packet transmitting / receiving apparatus for performing packet communication using an asynchronous communication procedure having a protocol for limiting the length of a packet, wherein when a write transmission request is received from an upper layer apparatus, the transmission request is transmitted. Means for calculating the limit length of the packet based on the
Means for dividing the write transmission request from the upper layer device into one or more columns of write request packets satisfying the limit length, and holding one write request packet having the same length as the limit length A write processing unit comprising: a write request buffer having a storage capacity; and a unit for sequentially storing and transmitting write request packets constituting a column one by one in the write request buffer; and reading from the upper layer device. Means for calculating a packet limit length based on the transmission request when receiving the transmission request, and a read transmission request from the upper layer device which is one such that a response packet satisfying the limit length is returned. A read request buffer having a storage capacity for holding one read request packet; And a means for sequentially storing and transmitting the read request packets forming the columns one by one in the read request buffer, and transmitting the read request packets.
【請求項6】 前記上位層装置からの送信要求を1個ま
たは複数個の要求パケットの列に分割して送信する場合
に、各要求パケットに付けるラベルを割り当てるととも
に割り当てたラベルを記録する手段をさらに有すること
を特徴とする請求項1,2,3,4または5記載のパケ
ット送受信装置。
6. A means for assigning a label to each request packet and recording the assigned label when the transmission request from the upper layer device is divided into one or a plurality of request packet strings and transmitted. The packet transmitting / receiving apparatus according to claim 1, 2, 3, 4, or 5, further comprising:
【請求項7】 前記上位層装置からの送信要求を1個ま
たは複数個の要求パケットの列に分割して送信する場合
に、各要求パケットに付けるラベルを割り当てるととも
に、割り当てる際に列の何番目の要求パケットに付けら
れたラベルであるかを示す連続番号を各ラベルに付与す
る手段と、この付与された連続番号を前記割り当てられ
たラベルとともに記録する手段とをさらに有することを
特徴とする請求項1,2,3,4または5記載のパケッ
ト送受信装置。
7. When a transmission request from the upper layer device is divided into one or a plurality of request packet columns and transmitted, a label assigned to each request packet is allocated, and at the time of allocation, Further comprising: means for assigning a serial number to each label indicating whether the label is a label attached to the request packet, and means for recording the assigned serial number together with the assigned label. Item 6. A packet transmitting / receiving apparatus according to any one of Items 1, 2, 3, 4 and 5.
【請求項8】 請求項1,2,3,4または5記載のパ
ケット送受信装置において、前記要求パケットに対応す
る応答パケットを受信する手段と、前記応答パケットが
含むデータを前記上位層装置に備えられた記憶装置に順
次コピーし、分割して受信したデータを一つのブロック
に構成する手段と、前記要求パケットに対応する全ての
応答パケットの受信を終えたときに前記上位層装置に通
知を行う手段とをさらに有することを特徴とするパケッ
ト送受信装置。
8. The packet transmission / reception device according to claim 1, wherein said upper layer device includes means for receiving a response packet corresponding to said request packet, and data included in said response packet. Means for sequentially copying data into the storage device, dividing the received data into one block, and notifying the upper layer device when the reception of all response packets corresponding to the request packet is completed. And a packet transmission / reception device.
【請求項9】 請求項6記載のパケット送受信装置にお
いて、前記要求パケットに対応する応答パケットを受信
する手段と、前記応答パケットが含むデータを前記上位
層装置に備えられた記憶装置に順次コピーし、分割して
受信したデータを一つのブロックに構成する手段と、対
応する要求パケットと同じラベルが付けられた前記応答
パケットのラベルを確認することにより、前記要求パケ
ットに対応する全ての応答パケットの受信を終えたこと
を検出する手段と、前記全ての応答パケットの受信を終
えたときに前記上位層装置に通知を行う手段とをさらに
有することを特徴とするパケット送受信装置。
9. The packet transmission / reception device according to claim 6, wherein: means for receiving a response packet corresponding to the request packet; and sequentially copying data included in the response packet to a storage device provided in the upper layer device. Means for composing the divided and received data into one block, and confirming the label of the response packet labeled with the same label as the corresponding request packet, so that all the response packets corresponding to the request packet A packet transmission / reception apparatus further comprising: means for detecting that reception has been completed; and means for notifying the upper layer apparatus when reception of all response packets has been completed.
【請求項10】 請求項7記載のパケット送受信装置に
おいて、前記要求パケットに対応する応答パケットを受
信する手段と、前記応答パケットが含むデータを前記上
位層装置に備えられた記憶装置にコピーする位置を、前
記応答パケットに付いているラベルの連続番号により特
定して順次コピーする手段と、分割して受信したデータ
を一つのブロックに構成する手段と、対応する要求パケ
ットと同じラベルが付けられた前記応答パケットのラベ
ルを確認することにより、前記要求パケットに対応する
全ての応答パケットの受信を終えたことを検出する手段
と、前記全ての応答パケットの受信を終えたときに前記
上位層装置に通知を行う手段とをさらに有することを特
徴とするパケット送受信装置。
10. The packet transmitting / receiving apparatus according to claim 7, wherein: a means for receiving a response packet corresponding to the request packet; and a position at which data included in the response packet is copied to a storage device provided in the upper layer device. Means for sequentially copying by specifying the serial number of the label attached to the response packet, means for forming divided and received data into one block, and the same label as the corresponding request packet. By confirming the label of the response packet, means for detecting that all the response packets corresponding to the request packet have been received, and to the upper layer device when the reception of all the response packets has been completed. A packet transmitting / receiving apparatus, further comprising means for performing notification.
【請求項11】 請求項6,7,9または10記載のパ
ケット送受信装置において、前記要求パケットに付けた
ラベルの使用を開始した時刻を各ラベルに対応して記録
する手段と、一定時間以上使用中のままになっているラ
ベル対応のパケットの送受信をタイムアウトとして中止
する手段とをさらに有することを特徴とするパケット送
受信装置。
11. A packet transmitting / receiving apparatus according to claim 6, wherein means for recording the time at which use of the label attached to the request packet is started corresponding to each label; Means for interrupting transmission / reception of a packet corresponding to the label that remains in the medium as a timeout, further comprising:
JP2000369093A 2000-12-04 2000-12-04 Packet transceiver Expired - Fee Related JP3512736B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000369093A JP3512736B2 (en) 2000-12-04 2000-12-04 Packet transceiver

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000369093A JP3512736B2 (en) 2000-12-04 2000-12-04 Packet transceiver

Publications (2)

Publication Number Publication Date
JP2002171300A true JP2002171300A (en) 2002-06-14
JP3512736B2 JP3512736B2 (en) 2004-03-31

Family

ID=18839186

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000369093A Expired - Fee Related JP3512736B2 (en) 2000-12-04 2000-12-04 Packet transceiver

Country Status (1)

Country Link
JP (1) JP3512736B2 (en)

Also Published As

Publication number Publication date
JP3512736B2 (en) 2004-03-31

Similar Documents

Publication Publication Date Title
US6728244B1 (en) Communication node for enabling interworking of network using request/response based data transfer and network using non-request/response based data transfer
JP3993893B2 (en) Application programming interface for data transfer over bus and bus management
US6397277B1 (en) Method and apparatus for transmitting data over data bus at maximum speed
US7302699B2 (en) Logged-in device and log-in device
TW498207B (en) Data transfer control device and electronic apparatus
EP1253520B1 (en) Apparatus for issuing command for high-speed serial interface
US6721859B1 (en) Multi-protocol media storage device implementing protocols optimized for storing and retrieving both asynchronous and isochronous data
JPH11355357A (en) File transfer method, file receiver, file transmitter and file repeater
JP4089060B2 (en) Information recording device
JP3512736B2 (en) Packet transceiver
JP4979206B2 (en) Information processing method and information processing apparatus
US10789005B2 (en) Server and associated computer program product using different tranmission speed for cold data tansmission
JP2570187B2 (en) DMA transfer apparatus and method
JPH11149455A (en) Memory disk sharing method and its executing device
JP4026979B2 (en) Data communication system
JP3278852B2 (en) Communication control device
JP2000032005A (en) System, method and device for data communication, digital interface and storage medium
JP2000250846A (en) Sequence processor
JP4362199B2 (en) Data transmission device
JPH11313124A (en) System, device and method of data communication and recording medium
JP3362547B2 (en) Communication adapter
JP3105883B2 (en) Communication device and method
JPH05268291A (en) Data buffer management system
WO2001035232A1 (en) Device for storing audio/video data and non audio/video data
JP2003263402A (en) Data transfer device and data transfer method

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20031224

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040107

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080116

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090116

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100116

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110116

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110116

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120116

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130116

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees