System, device and method of data communication and recording medium
Abstract
This record has no abstract on file.
Term
Term ended
Expired 28 April 2018, 8.4 years ago.
- Priority and filed
- Granted
- Expired
- Today
7 claims: 3 independent, 4 dependent
- 1受信側データ通信装置と、 送信すべきデータを 複数のセグメントに分割 し、前記セグメントを複数のセグメントデータに分割し、前記複数のセグメント データを 前記受信側データ通信装置に 送信する送信 側データ通信装置 とを 有する データ通信システム であって 、 前記受信側データ通信装置は、 前記送信側データ通信装置から送信された前記セグメントデータを格納する第1の受信バッファと、 前記第1の受信バッファに格納された前記セグメントデータを格納する第2の受信バッファと、 前記送信側データ通信装置が前記セグメントデータのサイズと前記セグメントのサイズとを決定するのに必要な前記第1の受信バッファのサイズを、前記受信側データ通信装置の最大データ転送速度に対応するペイロードサイズを用いて決定し、前記第2の受信バッファのサイズを、前記第1の受信バッファのサイズを用いて決定する第1の決定手段と、 前記第1の決定手段により決定された前記第1の受信バッファのサイズを示す情報を前記送信側データ通信装置に送信する送信手段とを有し、 前記送信側データ通信装置は、 前記受信側データ通信装置から前記第1の受信バッファのサイズを示す情報を受信する受信手段と、 前記セグメントデータのサイズと前記セグメントのサイズとを、前記第1の受信バッファのサイズを用いて決定する第2の決定手段とを有する ことを特徴とするデータ通信システム。
- 2前記第1の決定手段は、前記第2の受信バッファのサイズを、前記第1の受信バッファのサイズだけでなく、前記送信側データ通信装置の最大データ転送速度に対応するペイロードサイズを用いて決定することを特徴とする請求項1に記載のデータ通信システム。
- 3前記送信側データ通信装置と、前記受信側データ通信装置との間のコネクションを管理するコントローラをさらに有することを特徴とする請求項1又は2に記載のデータ通信システム。
- 4送信すべきデータを複数のセグメントに分割し、前記セグメントを複数のセグメントデータに分割し、前記複数のセグメントデータを送信する送信側データ通信装置から送信された前記複数のセグメントデータを受信するデータ通信装置であって、 前記送信側データ通信装置から送信された前記セグメントデータを格納する第1の受信バッファと、 前記第1の受信バッファに格納された前記セグメントデータを格納する第2の受信バッファと、 前記送信側データ通信装置が前記セグメントデータのサイズと前記セグメントのサイズとを決定するのに必要な前記第1の受信バッファのサイズを、前記データ通信装置の最大データ転送速度に対応するペイロードサイズを用いて決定し、前記第2の受信バッファのサイズを、前記第1の受信バッファのサイズを用いて決定する決定手段と、 前記決定手段により決定された前記第1の受信バッファのサイズを示す情報を前記送信側データ通信装置に送信する送信手段とを有することを特徴とするデータ通信装置。
- 5前記決定手段は、前記第2の受信バッファのサイズを、前記前記第1の受信バッファのサイズだけでなく、前記送信側データ通信装置の最大データ転送速度に対応するペイロードサイズを用いて決定することを特徴とする請求項4に記載のデータ通信装置。
- 6送信すべきデータを複数のセグメントに分割し、前記セグメントを複数のセグメントデータに分割し、前記複数のセグメントデータを受信側データ通信装置に送信するデータ通信装置であって、 前記データ通信装置から送信された前記セグメントデータを格納する第1の受信バッフ ァと、前記第1の受信バッファに格納された前記セグメントデータを格納する第2の受信バッファと、前記データ通信装置が前記セグメントデータのサイズと前記セグメントのサイズとを決定するのに必要な前記第1の受信バッファのサイズを、前記受信側データ通信装置の最大データ転送速度に対応するペイロードサイズを用いて決定し、前記第2の受信バッファのサイズを、前記第1の受信バッファのサイズを用いて決定する第1の決定手段と、前記第1の決定手段により決定された前記第1の受信バッファのサイズを示す情報を前記データ通信装置に送信する送信手段とを有する前記受信側データ通信装置から、前記第1の受信バッファのサイズを示す情報を受信する受信手段と、 前記セグメントデータのサイズと前記セグメントのサイズとを、前記第1の受信バッファのサイズを用いて決定する第2の決定手段とを有する ことを特徴とするデータ通信装置。
- 7前記第1の決定手段は、前記第2の受信バッファのサイズを、前記第1の受信バッファのサイズだけでなく、前記送信側データ通信装置の最大データ転送速度に対応するペイロードサイズを用いて決定することを特徴とする請求項6に記載のデータ通信装置。
Independent claims7
178 paragraphs, as filed
[Technical field to which the invention belongs] The present invention<u style="single">、</u>Data communication system<u style="single">And data communication</u>Outfit<u style="single">In place</u>about<u style="single">To.</u>[0002] Recently, a plurality of electronic devices are connected via one transmission line, and control signals and information signals (video signals, audio signals, graphics data, text data, etc.) between the devices are connected. Communication systems have been developed that control the communication so as to be performed in a mixed manner.
[0003] Further, in such a communication system, a communication protocol for asynchronously transmitting various information signals between each device has been developed. One of the technologies for realizing such a communication system is the IEEE1394-1995 standard (hereinafter referred to as 1394 standard) for high-performance serial buses.
[0004] Hereinafter, a configuration of a conventional communication system conforming to the 1394 standard will be described with reference to FIG. In FIG. 10, each device is equipped with a digital interface 1005 conforming to the 1394 standard.
[0005] The communication system of FIG. 10 is composed of a TV 1001, a digital video tape recorder (hereinafter, DVTR) 1002, a printer 1003, and a digital camcorder (hereinafter, DVCR) 1004. Each device is connected via a communication cable conforming to the 1394 standard.
[0006] Here, the communication cables are a 4-pin connector cable composed of two sets of shielded twisted pairs used for data transfer and communication of arbitration signals, and two sets of twisted pairs and power supply. There is a 6-pin connector cable consisting of a pair of wires. The data transmitted using the two sets of strands is the data encoded by the DS-Link method.
[0007] In the above-mentioned communication system, when the power is turned on, the bus is automatically reset according to a change in the connection configuration such as connection or disconnection of a new device. Here, the bus reset means that each device (hereinafter, node) constituting the communication system initializes the connection configuration of the communication system and the communication address (hereinafter, node ID) of each device that have been recognized so far. , This is a process for re-recognizing the new connection configuration and resetting the communication address.
[0008] Hereinafter, the bus reset processing procedure will be briefly described. This procedure consists of recognizing the hierarchical connection configuration in the communication system and assigning a physical communication address to each node.
[0009] Recognition of the connection configuration is executed by each node declaring a parent-child relationship after the start of the bus reset. Each node recognizes the communication system as a tree structure (hierarchical structure) by determining the parent-child relationship between the nodes. Since the parent-child relationship between each node depends on the connection state of the communication system and the function of each node, the relationship does not become the same for each bus reset.
[0010] For example, in the communication system of FIG. 3, first, a parent-child relationship is set between the printer 1003 (hereinafter, node D) and the DVTR1002 (hereinafter, node C). Next, a parent-child relationship is set between DVCR1004 (hereinafter, node B) and TV1001 (hereinafter, node A), and between node C and node A.
[0011] Finally, the device recognized as the parent (or higher level) of all the nodes becomes the root node, and manages the arbitration of the bus usage right of this communication system. In the communication system of FIG. 10, node A is the root node. After determining the root node, each node that makes up the communication system automatically starts setting the node ID.
[0012] In the setting of the node ID, basically, the parent node allows the child node connected to the communication port having the younger port number to set the physical address, and the child nodes in order with respect to their own child nodes. Executed by giving permission to set. The node that has set its own node ID sends a self-ID packet and notifies other nodes of the node ID given to itself. After finally setting the IDs of all the child nodes, the parent node sets its own node ID.
[0013] By repeatedly executing the above processing, the node ID of the root node is set at the very end. Since the node ID assigned to each node depends on the parent-child relationship of each device, the same node ID is not set for each bus reset.
[0014] Hereinafter, the node ID automatic setting process will be described using the communication system of FIG. In this embodiment, the case where the node A becomes the root node after recognizing the connection configuration will be described.
[0015] In FIG. 10, node A, which is a root node, first permits a node connected to the communication port of "port 1", that is, node B, to set a node ID.
[0016] Node B sets its own node ID to "# 0" and broadcasts the result as a self-ID packet to all the nodes constituting the communication system. Here, the broadcast is to send predetermined information to an unspecified number of nodes as destinations.
As a result, all the nodes recognize that "node ID" # 0 "has been assigned", and then the node permitted to set the node ID sets "# 1". After setting node B, node A allows the node connected to the communication port of "port 2", that is, node C, to set the node ID.
[0018] Node C further grants setting permission in order from the communication port having the youngest port number among the communication ports to which the child nodes are connected. That is, permission is given to node D, and after the permission is set, node D sets node ID "# 1" and then broadcasts a self-ID packet.
After setting node D, node C sets its own node ID to "# 3", and finally node A, which is the root node, sets its own node ID to "# 4" to configure the connection. End recognition of.
By such a bus reset process, each node can automatically recognize the connection configuration of the communication system and set the communication address of each node. Then, each node can communicate with each other by using the above-mentioned node ID.
Next, the data transfer method included in the communication system of FIG. 10 will be described with reference to FIG. The communication system of FIG. 10 includes an Isochronous transfer mode and an Asynchronous transfer mode as data transfer methods. The isochronous transfer mode is effective for real-time transfer of video data and audio data because it guarantees the transmission and reception of a fixed amount of packets every one communication cycle period (125 μs).
[0022] Further, the Asynchronous transfer mode is a transfer mode in which control commands, file data, and the like are transmitted and received asynchronously as needed, and is set to have a lower priority than the Isochronous transfer mode.
[0023] In FIG. 11, at the beginning of each communication cycle, a communication packet called a cycle start packet 1101 for adjusting the timed cycle time of each node is sent.
[0024] After the transfer of the cycle start packet 1101, a predetermined period is set to the Isochronous transfer mode. In the isochronous transfer mode, a plurality of isochronous transfers can be performed by assigning a channel number to each of the data transferred based on the isochronous transfer mode.
[0025] For example, in FIG. 11, the channel number ch0 is assigned to the data 1102 that is isochronously transferred from the DVCR1004, the channel number ch1 is assigned to the data 1103 that is isochronously transferred from the DVTR1002, and the channel number is assigned to the data 1104 that is isochronously transferred from the TV1001. When "ch2" is assigned, each data is isochronously transferred in a time division within one communication cycle period.
[0026] After each Isochronous transfer is completed, the period until the transfer period of the next cycle start packet 1101 is used for Asynchronous transfer. For example, in FIG. 11, data 1105 based on asynchronous transfer is transferred from DVCR1004 to printer 1003.
[0027] FIG. 12 is a sequence chart illustrating a conventional communication protocol based on an asynchronous transfer mode. In FIG. 12, the node for asynchronously transferring information data, that is, the source 1202 is referred to as DVCR1004.
[0028] Further, the node that receives the information data asynchronously transferred from the source 1202, that is, the destination 1203 is set as the printer 1003. Further, the node that manages the communication between the source 1202 and the destination 1203, that is, the controller 1201, is referred to as the TV1001.
[0029] Conventional communication protocols consist of three phases. The first phase 1204 is the connection phase, and the controller 1201 inquires about the receive buffer size of the destination 1203 and whether or not it can be received, and sets the destination 1203 in the reception standby state.
[0030] Further, the controller 1201 notifies the source 1202 of the receive buffer size inquired to the destination 1203, selects the information data to be asynchronously transferred from the source 1202, and sets the transfer from the transmission buffer.
The second phase 1205 is a transmission phase, in which the controller 1201 controls the source 1202 and the destination 1203 to synchronously transfer information data.
[0032] The third phase 1206 is the connection release phase, in which the controller 1201 releases the receive buffer of the destination 1203 from its own control and similarly releases the transmit buffer of the source 1202 from its own control.
FIG. 13 is a diagram illustrating the relationship between the information data asynchronously transferred from the source 1202 and the receive buffer of the destination 1203. The information data 1301 of one object that is asynchronously transferred from the source 1202 is divided into one or more segments 1302 equal to the receive buffer size of the destination 1203 notified from the controller 1201. Here, the size of each segment 1302 is a fixed length, and one segment consists of one or more segment data (fixed length).
[0034] Each segment data is packetized into a communication packet 1303 (hereinafter, Asynchronous packet 1303) based on the asynchronous transfer mode, and is sequentially transferred from the source 1202 to the destination 1203.
The destination 1203 sequentially receives Asynchronous packets 1303 from the source 1202 and temporarily writes them to the receive buffer 1304. After the transfer of information data for one segment is completed, the destination 1203 sequentially writes the data stored in the receive buffer 1304 to the internal memory 1305.
[0036] Hereinafter, the process of the second phase 1205 described above will be described in detail with reference to FIG. In FIG. 14, controller 1201 instructs destination 1203 to receive segment data that is asynchronously forwarded by one or more communication packets (1401).
[0037] Further, the controller 1201 instructs the source 1202 to divide the information data of one object into the above-mentioned segment units, and further synchronize each segment with one or more communication packets (1402). ..
After these instructions, source 1202 packets one segment of data into one or more Asynchronous packets and sequentially forwards those Asynchronous packets to destination 1203 (1403).
[0039] After the transfer of the segment data instructed by the controller 1201 is completed, the source 1202 notifies the controller 1201 of the completion of the transfer (1404). In addition, the destination 1203 notifies the controller 1201 that the reception of the segment data instructed by the controller 1201 is completed (1405). As described above, the information data for one segment is transferred by the procedure shown in 1401 to 1405 in FIG. 14 (1406).
[0040] When starting the transfer of the next segment data, the procedure shown in 1401 to 1405 is repeated again, and the controller 1201 controls the transfer between the source 1202 and the destination 1203 (1407).
However, the above-mentioned communication protocol has the following problems. For example, in the conventional communication protocol, the size of each segment has a fixed length and is controlled to be equal to the size of the receive buffer included in the destination 1203.
[0042] Further, the size of the receive buffer included in the destination 1203 is constant until the transfer of all data is completed, and there is no mechanism for variably controlling the size of each segment during the transfer of all data.
[0043] For example, in a printer that sequentially receives image data divided into a plurality of segments according to a conventional communication protocol, a part of the data that has been image-processed for printing while receiving the data for each segment. You may want to temporarily store it in a part of the receive buffer.
[0044] In such a case, in the conventional communication protocol, since the amount of data in each segment is constant, it is possible to reduce the amount of data in some segments during communication and secure a desired area in the receive buffer. could not.
[0045] Also, in order to enable communication with more devices, the amount of data in one segment transferred from the source 1202 to the destination 1203 during communication can be reduced, or the communication can be terminated earlier. It was not possible to adaptively control the increase in the amount of data in one segment by increasing the receive buffer size of destination 1203 during communication.
【0046】<u style="single">Therefore, the present invention</u>Is<u style="single">Should be sent</u>Data<u style="single">Multiple</u>Segmen<u style="single">To</u>Divide and<u style="single">The relevant</u>segment<u style="single">The multiple segments</u>data<u style="single">In the case of dividing into and transmitting the plurality of segment data to the receiving side data communication device, the relevant</u>The amount of data in the segment<u style="single">Appropriate</u>Data communication system that can be controlled<u style="single">And data communication</u>Outfit<u style="single">Place</u>To provide<u style="single">With the goal</u>。
[Means for solving problems] [means for solving problems]<u style="single">Book</u>invention<u style="single">Related to</u>Data communication system<u style="single">Receiving data communication device and data to be transmitted</u>Divided into multiple segments<u style="single">Then, the segment is divided into a plurality of segment data, and the plurality of segments are obtained.</u>Data<u style="single">To the receiving side data communication device</u>Send send<u style="single">Side data communication device</u>And<u style="single">Have</u>Data communication system<u style="single">And</u>、<u style="single">The receiving side data communication device has a first receiving buffer for storing the segment data transmitted from the transmitting side data communication device and a second receiving buffer for storing the segment data stored in the first receiving buffer. The size of the receive buffer and the first receive buffer required for the transmitting data communication device to determine the size of the segment data and the size of the segment is determined by the maximum data transfer rate of the receiving data communication device. The size of the second receive buffer is determined by using the size of the first receive buffer, and the size of the second receive buffer is determined by the first determination means and the first determination means. It also has a transmission means for transmitting information indicating the size of the first reception buffer to the transmission side data communication device, and the transmission side data communication device has the first reception buffer from the reception side data communication device. It has a receiving means for receiving information indicating the size of the above, and a second determining means for determining the size of the segment data and the size of the segment using the size of the first receiving buffer.</u>Characterized by<u style="single">Su</u>Ru<u style="single">。</u>[0048] The present invention<u style="single">Related to</u>data communication<u style="single">One of the devices</u>Is<u style="single">Data communication that divides the data to be transmitted into a plurality of segments, divides the segment into a plurality of segment data, and receives the plurality of segment data transmitted from the transmitting side data communication device that transmits the plurality of segment data. A first receive buffer for storing the segment data transmitted from the transmission side data communication device, and a second receive buffer for storing the segment data stored in the first receive buffer. The size of the first receive buffer required for the transmitting data communication device to determine the size of the segment data and the size of the segment is the payload size corresponding to the maximum data transfer speed of the data communication device. The size of the second receive buffer is determined by using the size of the first receive buffer, and the size of the first receive buffer determined by the determination means is shown. It is characterized by having a transmission means for transmitting information to the transmission side data communication device.</u>The present invention<u style="single">Related to</u>Data communication equipment<u style="single">one of</u>Is<u style="single">A data communication device that divides data to be transmitted into a plurality of segments, divides the segment into a plurality of segment data, and transmits the plurality of segment data to a receiving side data communication device, and is transmitted from the data communication device. A first receive buffer for storing the segment data, a second receive buffer for storing the segment data stored in the first receive buffer, and the data communication device having the size of the segment data and the said. The size of the first receive buffer required to determine the size of the segment is determined using the payload size corresponding to the maximum data transfer speed of the receiving side data communication device, and the size of the second receive buffer is determined. The data communication device is provided with a first determining means for determining the size using the size of the first receiving buffer and information indicating the size of the first receiving buffer determined by the first determining means. The receiving means for receiving information indicating the size of the first receiving buffer from the receiving side data communication device having the transmitting means for transmitting, and the size of the segment data and the size of the segment are determined by the first. It is characterized by having a second determination means for determining using the size of the receive buffer.</u>BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, the data communication system, the apparatus and the method, and the recording medium of the present invention will be described in detail with reference to the drawings. In the following embodiments, the same members as those in the above-mentioned conventional example or the corresponding members will be described by using the same reference numerals.
(First Embodiment) Hereinafter, a case where the communication protocol of the first embodiment is applied to the communication system shown in FIG. 10 will be described. Here, the controller 101 in the first embodiment is the TV1001, the source 102 is the DVCR1004, and the destination 103 is the printer 1003.
[0053] In the first embodiment, the source 102 divides the information data of one object (for example, image data, audio data, graphics data, text data, etc.) into segments having a predetermined amount of data, and then the source 102 Asynchronous transfer of that segment as one or more segment data.
[0054] Further, the destination 103 receives one or more Asynchronous packets asynchronously transferred from the source 102, and stores the segment data included in each Asynchronous packet in the reception buffer.
[0055] Here, the receive buffer of the destination 103 is secured in the CSR (Control and Status Register) space included in the destination 103. The segment data is written to a predetermined area in the CSR space specified by the offset address included in each Asynchronous packet. The destination 103 stores the data in the internal memory every time the writing of the data for one segment to the CSR space is completed. The CSR space conforms to the ISO / IEC 13213: 1994 standard.
[0056] Further, the controller 101 manages communication between the source 102 and the destination 103, such as querying the buffer size of the destination 103 and selecting information data to be transferred from the source 102.
[0057] Further, the communication protocol of the first embodiment is composed of three phases, that is, a connection phase, a transmission phase, and a connection release phase, similarly to the conventional communication protocol. Here, the connection phase and the connection release phase in the first embodiment can be executed in the same manner as in the first phase 1204 and the third phase 1206 in the conventional communication protocol. Therefore, in the first embodiment, the transmission phase will be described in detail.
[0058] Hereinafter, the transmission phase of the first embodiment will be described with reference to FIGS. 1 and 2. FIG. 1 is a sequence chart for explaining the transmission phase of the first embodiment in detail. Further, FIG. 2 is a flowchart illustrating the procedure of the transmission phase of the first embodiment in detail.
[0059] In step S201, the controller 101 instructs the destination 103 to receive a segment of a predetermined size that is asynchronously forwarded in some communication packets (104). Here, the destination 103 returns a response to the instruction from the controller 101.
[0060] In step S202, the controller 101 instructs the source 102 to divide the information data into segments of a predetermined size and further asynchronously transfer the segments in some communication packets (105). Here, the source 102 returns a response to the instruction from the controller 101.
[0061] In step S203, after the instruction from the controller 101, the source 102 packetizes the one-segment data into one or more Asynchronous packets and sequentially forwards those Asynchronous packets to the destination 103 (106).
[0062] Here, each Asynchronous packet stores an offset address that specifies a predetermined area of the receive buffer included in the destination 103. For example, the first Asynchronous packet in each segment contains the start address of the receive buffer notified by the controller 101. Further, in the subsequent Asynchronous packets, an offset address for sequentially designating a predetermined area of the receive buffer is stored.
[0063] In step S204, after the synchronous transfer of the data for one segment is completed, the source 102 notifies the controller 101 of the completion of the transfer of the data for one segment (107). Here, the source 102 waits for the transfer of the next segment until it receives the instruction from the controller 101.
[0064] In step S205, the destination 103 also notifies the controller 101 that the reception of data for one segment is completed (108).
[0065] In step S206, the destination 103 further informs the controller 101 of the size of the newly available receive buffer for the next receive segment (109). Here, the controller 101 stores and manages the new buffer size notified by the destination 103 in a predetermined area of the CSR space.
[0066] By the above procedure, the transfer of data for one segment is completed. When starting the transfer of the next and subsequent segments, the controller 101, the source 102, and the destination 103 may repeat the procedure shown in 104 to 109 (step S207). At that time, the controller 101 notifies the source 102 of the new buffer size notified by the destination 103 each time the transfer of one segment is completed.
[0067] As described above, in the first embodiment, the destination 103 is controlled to notify the controller 101 of the new buffer size each time the transfer of the information data for one segment is completed. Thereby, the amount of data of each segment can be set adaptively.
(Second Embodiment) In the first embodiment described above, every time one segment of information data is received, a destination 103 can be newly secured for the next segment to be received. The communication protocol that controls the size of the receive buffer to be notified to the controller 101 has been described.
[0069] In the second embodiment, a communication protocol that controls the destination 303 to directly notify the source 302 of the size of the newly available receive buffer for the next receive segment will be described.
[0070] Hereinafter, a case where the communication protocol of the second embodiment is applied to the communication system shown in FIG. 10 will be described. Here, the controller 301 in the second embodiment is the TV1001, the source 302 is the DVCR1004, and the destination 303 is the printer 1003.
[0071] In the second embodiment, the source 302 divides the information data (for example, image data, audio data, graphics data, text data, etc.) of one object into segments of a predetermined size, and then divides the information data into segments of a predetermined size. Asynchronous transfer of segments as one or more segment data.
[0072] Further, the destination 303 receives one or more Asynchronous packets asynchronously transferred from the source 302, and stores the segment data included in each Asynchronous packet in the receive buffer. Here, the receive buffer of the destination 303 is secured in the CSR (Control and Status Register) space included in the destination 303.
[0073] The segment data is written to a predetermined area in the CSR space specified by the offset address included in each Asynchronous packet. The destination 303 stores the data in the internal memory every time the writing of the data for one segment to the CSR space is completed.
Further, the controller 301 manages the communication between the source 302 and the destination 303, such as querying the receive buffer size that the destination 303 can secure at the start of communication and selecting information data to be transferred from the source 302. ..
[0075] Further, the communication protocol of the second embodiment is composed of three phases, that is, a connection phase, a transmission phase, and a connection release phase, similarly to the conventional communication protocol. Here, the connection phase and the connection release phase in the second embodiment can be executed in the same manner as in the first phase 1204 and the third phase 1206 in the conventional communication protocol. Therefore, in the second embodiment, the transmission phase will be described in detail.
[0076] Hereinafter, the transmission phase of the second embodiment will be described with reference to FIGS. 3 and 4. FIG. 3 is a sequence chart for explaining the transmission phase of the second embodiment in detail. Further, FIG. 4 is a flowchart illustrating the procedure of the transmission phase of the second embodiment in detail.
[0077] In step S401, the controller 301 instructs the destination 203 to receive a segment of a predetermined size that is asynchronously forwarded in some communication packets (304). Here, the destination 303 returns a response to the instruction from the controller 301.
[0078] In step S402, the controller 301 instructs the source 302 to divide the information data into segments of a predetermined size and further asynchronously transfer the segments in some communication packets (305). Here, the source 302 returns a response to the instruction from the controller 301.
[0079] In step S403, after the instruction from the controller 301, the source 302 packetizes one segment into one or more Asynchronous packets and sequentially forwards those Asynchronous packets to the destination 303 (306). Here, each Asynchronous packet stores an offset address that specifies a predetermined area of the receive buffer included in the destination 303. For example, the first Asynchronous packet in each segment contains the start address of the receive buffer notified by the controller 301. Further, in the subsequent Asynchronous packets, an offset address for sequentially designating a predetermined area of the receive buffer is stored.
[0080] In step S404, after the synchronous transfer of the data for one segment is completed, the source 302 notifies the controller 301 of the completion of the transfer of the data for one segment (307). Here, the source 302 waits for the transfer of the next segment until it receives the instruction from the controller 301.
[0081] In step S405, the destination 303 also notifies the controller 301 that the reception of data for one segment has been completed (308). In step S406, the destination 303 further informs the source 302 of the size of the newly available receive buffer for the next receive segment (309).
[0082] In step S407, the source 302 stores the size of the receive buffer in a predetermined area of the CSR space and notifies the controller 301 that the size of the receive buffer has been received (310). With this notification, the controller 301 can instruct the start of transfer of the next segment.
[0083] By the above procedure, the transfer of data for one segment is completed. When starting the transfer of the next and subsequent segments, the controller 301, the source 302, and the destination 303 may repeat the procedure shown in 304 to 310 (step S408).
At that time, the source 302 receives a new receive buffer size notified from the destination 303 each time the transfer of one segment is completed, and sets the size of the segment to be transferred next according to the size. decide. As described above, in the second embodiment, as in the first embodiment, every time the transfer of information data for one segment is completed, the destination 303 sends a new receive buffer to the source 302. By controlling the size to be notified, the amount of data in each segment can be set adaptively.
[0085] Further, in the second embodiment, it is not necessary to have the controller 301 manage the receive buffer size of the destination 303 changed during the communication of all data, and it is managed between the source 302 and the destination 303. Can be made to. As a result, the load on the controller can be made smaller as compared with the first embodiment.
(Third Embodiment) In the second embodiment described above, the controller 301 sets the connection between the source 302 and the destination 303, and starts the transfer of each segment of the controller 301. The communication protocol that is controlled so as to be instructed by is described.
[0087] In the third embodiment, after the controller 301 establishes a connection between the source 302 and the destination 303, the transfer of each segment is performed between the source 302 and the destination 303 without going through the controller 301. The communication protocol to be controlled with is described.
[0088] Hereinafter, a case where the communication protocol of the third embodiment is applied to the communication system shown in FIG. 10 will be described. Here, the controller 501 in the third embodiment is the TV1001, the source 502 is the DVCR1004, and the destination 503 is the printer 1003.
[0089] In the third embodiment, the source 502 divides the information data (for example, image data, audio data, graphics data, text data, etc.) of one object into segments of a predetermined size, and then divides the information data into segments of a predetermined size. Asynchronous transfer of segments as one or more segment data.
[0090] Further, the destination 503 receives one or more Asynchronous packets asynchronously transferred from the source 502, and stores the segment data included in each Asynchronous packet in the receive buffer. Here, the receive buffer of the destination 503 is secured in the CSR (Control and Status Register) space included in the destination 503.
[0091] The segment data is written to a predetermined area in the CSR space specified by the offset address included in each Asynchronous packet. The destination 503 stores the data in the internal memory every time the writing of the data for one segment to the CSR space is completed.
[0092] Further, the controller 501 manages communication between the source 502 and the destination 503, such as an instruction to open the buffer area to the source 502 and the destination 503, an instruction to start transferring an object to the source 502, and the like.
[0093] Hereinafter, the communication protocol of the third embodiment will be described. FIG. 5 is a sequence chart for explaining the communication protocol of the third embodiment in detail. Further, FIG. 6 is a flowchart illustrating the procedure of the communication protocol of the third embodiment in detail.
[0094] The communication protocol of the third embodiment is composed of three phases, that is, a connection phase, a transmission phase, and a connection release phase, similarly to the conventional communication protocol.
[0095] First, the connection phase will be described. In step S601, the controller 501 establishes a connection between the source 502 and the destination 503 and instructs the destination 503 to open the receive buffer and start receiving information data of one object (504). Here, the destination 503 returns a response to the instruction from the controller 501.
[0096] In step S602, the controller 501 together with the source 502 instructs the source 502 to release the transmission buffer and start transmitting the information data of one object (505). Here, the source 502 returns a response to the instruction from the controller 501.
Next, the transmission phase will be described. In step S603, the source 502 notifies the destination 503 of the data size of the information data of one object (506). The destination 503 stores this data size in a predetermined area of the CSR space.
[0098] In step S604, the destination 503 communicates the size of the receive buffer with the size of the data (that is, the payload size) that can be received in a 1 Asynchronous packet (507). The source 502 stores the receive buffer size and the payload size in a predetermined area of the CSR space.
[0099] In step S605, the source 502 divides the information data of one object into segments of a predetermined size according to the receive buffer size and the payload size, packages the segments into one or more Asynchronous packets, and packages them. Transfer to destination 503 in sequence (508). After the transfer of one segment data is completed, the source 502 waits for the transfer of the next segment until the notification of the completion of reception from the destination 503 is received.
[0100] Here, each Asynchronous packet stores an offset address that specifies a predetermined area of the receive buffer included in the destination 503. For example, the first Asynchronous packet in each segment contains the start address of the receive buffer notified by source 502. Further, in the subsequent Asynchronous packets, an offset address for sequentially designating a predetermined area of the receive buffer is stored.
[0101] In step S606, after receiving the data for one segment, the destination 503 notifies the source 502 of the completion of the transfer of the data for one segment (509).
[0102] In step S607, the destination 503 further informs the source 502 of the size of the newly available receive buffer for the next receive segment (510). The source 502 stores the receive buffer size in a predetermined area of the CSR space, and sets the size of the segment to be transferred next according to the receive buffer size and the payload size.
[0103] By the above procedure, the transfer of data for one segment is completed. When starting the transfer of the next and subsequent segments, the controller 501, the source 502, and the destination 503 may repeat the procedure shown in 504 to 510 (step S608). At that time, the source 502 receives a new receive buffer size notified by the destination 503 each time the transfer of one segment is completed, and determines the size of the segment to be transferred next according to the new receive buffer size. After the transfer of the information data of one object is completed, the source 502 notifies the controller 501 of the completion of the transfer (511).
[0104] The destination 503 also notifies the controller 501 that the reception of the information data of one object is completed (512). The transmission phase ends with the above procedure.
[0105] In the connection release phase, the controller 501 releases the receive buffer of the destination 503 from its own control (513) after receiving the notification of the completion of communication from the source 502 and the destination 503, and the source 502 Release the transmit buffer from its control (514).
[0106] As described above, in the third embodiment, the destination 503 is controlled to notify the source 502 of the new buffer size each time the transfer of the information data for one segment is completed. Thereby, the amount of data of each segment can be set adaptively.
[0107] Further, in the third embodiment, as in the second embodiment, it is not necessary to have the controller 501 manage the receive buffer size of the destination 503 changed during the communication of all data, and the source It can be managed between 502 and destination 503. As a result, the load on the controller can be made smaller as compared with the first embodiment.
[0108] Further, in the third embodiment, after setting the connection between the source 502 and the destination 503, the size setting of each segment and the transfer of each segment are set between the source 502 and the destination 503. Can be controlled and executed. As a result, the load on the controller can be reduced and the communication procedure can be further simplified as compared with the first and second embodiments.
(Fourth Embodiment) In this fourth embodiment, the controller 501 establishes a connection between the source 502 and the destination 503, as in the third embodiment described above. Later, a communication protocol that controls the transfer of each segment data between the source 502 and the destination 503 without going through the controller 501 will be described.
[0110] Hereinafter, a case where the communication protocol of the fourth embodiment is applied to the communication system shown in FIG. 10 will be described. Here, the controller 701 in the fourth embodiment is the TV1001, the source 702 is the DVCR1004, and the destination 703 is the printer 1003.
[0111] In the fourth embodiment, the source 702 divides the information data of one object (for example, image data, audio data, graphics data, text data, etc.) into segments having a predetermined amount of data, and then divides the information data into segments. Asynchronous transfer of the segment as one or more segment data.
[0112] Further, the destination 703 receives one or more Asynchronous packets asynchronously transferred from the source 702, and stores the segment data included in each Asynchronous packet in the receive buffer. Here, the receive buffer of the destination 703 is secured in the CSR (Control and Status Register) space included in the destination 703.
[0113] Each segment data is written to a predetermined area in the CSR space specified by the offset address included in each Asynchronous packet. The destination 703 stores the data in the internal memory every time the writing of the data for one segment to the CSR space is completed.
[0114] Hereinafter, the configuration of the buffer included in the source 702 and the destination 703 will be described in detail with reference to FIGS. 8 and 9. In FIGS. 8 and 9, the source 702 includes one receive buffer, that is, "Source Buffer 1." Here, Source Buffer 1 is secured in a predetermined area of the CSR space included in Source 702.
[0115] Further, in FIGS. 8 and 9, the destination 703 includes two receive buffers, that is, Destination Buffer 1 and Destination Buffer 2. Here, Destination Buffer 1 and Destination Buffer 2 are secured in a predetermined area of the CSR space included in the destination 703.
[0116] The sizes of Source Buffer 1, Destination Buffer 1, and Destination Buffer 2 shown in FIGS. 8 and 9 are defined as follows. First, in the fourth embodiment, the sizes of Destination Buffer 1 and Destination Buffer 2 are defined as follows.
[0117] Destination Buffer 2 = (max _rec) × N (N = 1, 2, 3 ...) ... (Equation 1) Here, Destination Buffer 2 corresponds to the size of one segment. In addition, N is an integer and corresponds to the number of segment data constituting one segment.
[0118] Destination Buffer1 = max _rec ... (Equation 2) Here, "max _rec" means the reception of the destination 703 in the Asynchronous packet received based on the Asynchronous Write transaction conforming to the IEEE1394-1995 standard. Indicates the maximum possible payload size. The size of "max _rec" varies depending on the maximum data transfer rate supported by the destination 703. "Max _rec" is defined as follows.
[0119] max _rec = 4Byte × 2<sup>L </sup> (L = 0,1,2 ...) ... (Equation 3) where L is an integer.
From (Equation 1) and (Equation 2), the relationship between Destination Buffer 1 and Destination Buffer 2 is as follows.
[0121] Destination Buffer 2 = (Destination Buffer 1) × N (N = 1,2,3 ...) ... (Equation 4) Further, in the fourth embodiment, Source Buffer 1 is set as follows. Define.
[0122] Source Buffer 1 = 4Byte × 2<sup>M </sup>(M = 0,1,2 ...) ... In (Equation 5) (Equation 4), Source Buffer 1 indicates the maximum value of the payload size of the transmittable asynchronous packet of the source 702. The size of Source Buffer 1 varies depending on the maximum data transfer rate supported by Source 702. Where M is an integer.
From (Equation 3) and (Equation 5), the relationship between max _rec and Source Buffer 1 is as follows (Equation 6). Source Buffer 1: max _rec = 2<sup>M </sup>:2<sup>L </sup> ... by equation (Equation 6), max _rec is [0124]<img file="JP4046846B2_D0001.tif" />Will be.
From (Equation 7) and (Equation 1), Destination Buffer 2 is Destination Buffer 2 = (Source Buffer 1) × {2.<sup>(LM) </sup>} × N ... (Equation 8).
[0126] According to (Equation 8), the source 702 sends an Asynchronous packet whose payload size is Source Buffer 1 minute [{2].<sup>(LM) </sup>} × N] Destination Buffer 2 can be filled by sending.
[0127] By defining in this way, the size of Destination Buffer 2 can be determined by the size of Source Buffer 1 and the size of Destination Buffer 1.
[0128] For example, in FIG. 8, when Source Buffer 1 = Destination Buffer 1 (= max _rec), M = L from the equation. In this case, the formula makes the size of Destination Buffer 2 N times the size of Source Buffer 1. Therefore, the size of each segment can be variably controlled by setting the value of N.
Further, in FIG. 8, when Source Buffer 1> Destination Buffer 1 (= max _rec), M> L is obtained from the equation. In this case, Source 702 sets the size of Source Buffer 1 to be equal to the size of Destination Buffer 1. As a result, the size of Destination Buffer 2 becomes N times the size of Source Buffer 1. Therefore, the size of each segment can be variably controlled by setting the value of N.
Further, in FIG. 9, when Source Buffer 1 <Destination Buffer 1 (= max _rec), M <L from the equation. In this case, the destination 703 sets the size of Destination Buffer 1 to be equal to the size of Source Buffer 1. As a result, the size of Destination Buffer 2 becomes the size of Source Buffer 1 [{2<sup>(LM) </sup>} × N] Doubled. Therefore, the size of each segment can be variably controlled by setting the values of M, N, and L.
[0131] Further, in the fourth embodiment, the controller 701 informs the source 702 and the destination 703 to release the buffer area, instructs the subunit included in the source 702 to prepare for transfer of the object, and the like, and so on. Manage connections to and from destination 703.
[0132] Hereinafter, the communication protocol of the fourth embodiment will be described. FIG. 7 is a sequence chart for explaining the communication protocol of the fourth embodiment in detail.
[0133] The communication protocol of the fourth embodiment is composed of three phases, that is, a connection phase, a transmission phase, and a connection release phase, similarly to the conventional communication protocol . First, the connection phase will be described.
(1) The procedure 704 shown in FIG. 7 will be described. The controller 701 issues an application CTS (Command Control Set) command (SubUnit Appli Cmd shown in Fig. 7) to the destination 703, and prepares the subunits of the destination 703 for reception. Control. In the fourth embodiment, the destination 703 is the printer 1003. Therefore, the controller 701 issues a print command in the form of a CTS command to the printer unit included in the printer 1003.
[0135] As shown in FIGS. 8 and 9, the destination 703 includes two receive buffers, a Destination Buffer 1 and a Destination Buffer 2. Upon receiving the above-mentioned application CTS command, the destination 703 initializes the Destination Buffer 1 and the Destination Buffer 2, and initializes the application memory included in the subunit. If the subunit is ready to receive, an Interim response (SubUnit Appli Resp shown in Figure 7) is returned to the controller 701 in CTS command format.
(2) Procedure 705 shown in FIG. 7 will be described. Next, the controller 701 issues an application CTS command (SubUnit Appli Cmd shown in FIG. 7) to the source 702, and controls the subunit provided by the source 702 to prepare for transmission. In a fourth embodiment, the source 702 is the DVCR1004. Therefore, the controller 701 issues a playback command in the form of a CTS command to the camcorder unit included in the DVCR1004.
[0137] The destination 703 includes Source Buffer 1 as shown in FIGS. 8 and 9. Source 702, which receives the above application CTS command, initializes Source Buffer 1. If the subunit is ready to send, an Interim response (SubUnit Appli Resp as shown in Figure 7) is returned to the controller 701 in CTS command format.
Next, the transmission phase will be described. (3) Explanation of procedure 706 shown in Fig. 7. The source 702 that sent the Interim response prepares to send the information data of one object stored in the application memory of the subunit, and notifies the destination 703 that the preparation is completed.
[0139] When notifying the completion of transmission preparation using an Asynchronous Write transaction conforming to the IEEE1394-1995 standard, the source 702 indicates "Ready" indicating the completion of transmission preparation to a predetermined register included in the destination 703. to send "Write information. The "Ready to send" information includes the above-mentioned value of M.
[0140] Here, a predetermined register is provided at a predetermined address in the CSR space included in the destination 703. Therefore, the source 702 writes "Ready to send" information using an Asynchronous Write transaction that specifies its predetermined address.
[0141] In the fourth embodiment, the process of writing "Ready to send" information to a predetermined register has been described, but a specific flag indicating "Ready to send" is provided in a predetermined field of the register. Then, the flag may be rewritten.
(4) Description of procedure 707 shown in FIG. The destination 703 that sent the Interim response and received the "Ready to send" information from the source 702 has the "Ready to receive" information and the information about Destination Buffers 1 and 2 for the predetermined register of the source 702 (Fig. 7). Write "Buffer Info") and.
[0143] Here, the information regarding the Destination Buffer 1 is the maximum value of the receivable payload size of the destination set by the above-mentioned L value and the above-mentioned M value, and is information indicating the size of the segment data. Is. Further, the information regarding the Destination Buffer 2 is information indicating the size of the segment set by the above-mentioned value of N. Here, the size of the segment is set to be N times the size of the segment data. Further, in the destination 703, the value of N can be variably set according to each segment.
[0144] Here, a predetermined register is provided at a predetermined address in the CSR space included in the source 702. Therefore, the destination 703 writes this information using an Asynchronous Write transaction that specifies its predetermined address.
(5) A description of the Data Transfer 708 shown in FIG. After receiving the "Ready to receive" information from the destination 703, the source 702 divides the information data of one object into segments consisting of N segment data by using the information about Destination Buffers 1 and 2.
[0146] The source 702 sequentially stores each segment data in the Source Buffer 1 and then sequentially transfers the data by using an Asynchronous Write transaction. Here, each segment data is continuously written to Destination Buffer 1 secured in the CSR space. The segment data written to Destination Buffer 1 is stored in Destination Buffer 2 by the time the next segment data is received. The transmission of each segment data is executed until the Destination Buffer 2 secured by the destination 703 is full.
(6) Description of procedure 709 shown in FIG. After transmitting the N segment data, the source 702 transmits the End of Segment information shown in FIG. 7 to the destination 703. This "End of Segment" information is written to a register that writes "Ready to send" information using an Asynchronous Write transaction.
[0148] Here, when the transmission of all the segment data constituting the information data of one object is completed, the source 702 is "End of Data" shown in FIG. 7 even if all of the Destination Buffer 2 is not filled. Send information to destination 703. This "End of Data" information is written to a register that writes "Ready to send" information using an Asynchronous Write transaction.
(7) Description of procedure 710 shown in FIG. Upon receiving the "End of Segment" information, the destination 703 and its subunits recognize that the transmission of information data for one segment (consisting of N segment data) has been completed.
[0150] The destination 703 stores the N segment data stored in the Destination Buffer 2 in the application memory area inside the subunit. The destination 703 then uses an Asynchronous Write transaction to write "Ready to receive" information to a given register on the source 702.
[0151] The source 702 that has received the "Ready to receive" information executes 706 to 710 of FIG. 7 again after the preparation for transmission of the next segment is completed, and transmits the data for 2 minutes of the Destination Buffer.
[0152] Further, when the "End of Data" information is received, the destination 703 recognizes that the transmission of all the segment data constituting the information data of one object has been completed. The destination 703 then notifies the source 702 of the "End of Conf" information shown in FIG. This "End of Data" information is written to a register that writes "Ready to send" information using an Asynchronous Write transaction. The transmission phase ends with the above procedure. The connection release phase will also be described.
(8) Description of procedure 711 shown in FIG. 7. Upon receiving the "End of Conf" information, the source 702 notifies the controller 701 that the transmission of all the segment data constituting the information data of one object has been completed. This notification is made using the CTS command format "Accepted response".
(9) Description of procedure 712 shown in FIG. The destination 703 that has transmitted the "End of Conf" information notifies the controller 701 that the reception of all the segment data constituting the information data of one object has been completed. This notification is made using the CTS command format "Accepted response".
[0155] As described above, in the fourth embodiment, the relationship between Source Buffer 1, Destination Buffer 1, and Destination Buffer 2 is defined. As a result, the destination 703 can variably set the size of each segment according to the value of M notified from the source 702 and the values of N and L. In addition, the calculation for determining the size of the segment can be facilitated.
[0156] Further, in the fourth embodiment, each time the transfer of the information data for one segment is completed, the destination 703 is controlled to notify the source 702 of the new buffer size. The amount of data in each segment can be set adaptively.
[0157] Further, in the fourth embodiment, as in the third embodiment, it is not necessary to have the controller 701 manage the receive buffer size of the destination 703 changed during the communication of all data, and the source It can be managed between 702 and destination 703. As a result, the load on the controller can be made smaller as compared with the first embodiment.
[0158] Further, in the fourth embodiment, after setting the connection between the source 702 and the destination 703, the size setting of each segment and the transfer of each segment are set between the source 702 and the destination 703. Can be controlled and executed. As a result, the load on the controller can be reduced and the communication procedure can be further simplified as compared with the first and second embodiments.
[0159] Further, according to the fourth embodiment, the size of each segment can be set to an integral multiple of the receivable payload size of the destination 703. As a result, by managing the number of packets sent from the source, it is possible to manage the transmission of data for each segment, and the transmission control on the source side becomes easy.
[0160] Further, according to the fourth embodiment, the size of the destination receive buffer can be set to an integral multiple of the destination receivable payload size. As a result, the receive buffer secured at the destination can be effectively used, and the address for writing each segment data can be easily controlled.
(Other Embodiments) Each of the above-described embodiments can also be realized as follows. For example, a recording medium on which a program code of software that realizes the functions of the above-described embodiment is recorded is supplied to a control unit (including a microcomputer) provided in the system or device of the present embodiment. You can also.
[0162] Then, the control unit provided in the system or device of the present embodiment reads the program code stored in the recording medium, and operates the system or device so as to realize the function of the above-described embodiment. The embodiment of the present invention can be realized even if it is configured to be controlled.
[0163] For example, the processing procedure and the processing procedure shown in FIG. 1 of the first embodiment, FIG. 3 of the second embodiment, FIG. 5 of the third embodiment, and FIG. 7 of the fourth embodiment. A recording medium containing the program code that realizes the function is supplied to the control unit 706 of each node shown in FIG. Then, even if the control unit 706 of each node reads the program code stored in the recording medium and operates the processing circuit of each node shown in FIG. 7 so as to realize the function of each embodiment. Good.
[0164] In this case, the program code itself read from the recording medium realizes the function of the above-described embodiment, and the recording medium storing the program code is a component of a part of the present invention. Become.
[0165] As a recording medium for supplying the program code, for example, a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a non-volatile memory card, a ROM, or the like is used. Can be done.
[0166] Further, the OS (operating system) or application software running on the control unit controls the operation of the system or device of the present embodiment based on the instruction of the program code read from the recording medium. Therefore, it goes without saying that the case of realizing the function of the above-described embodiment is also included in the present invention.
[0167] Further, after the program code read from the recording medium is written in the memory provided in the function expansion board or the function expansion unit connected to the control unit, the function is expanded based on the instruction of the program code. Needless to say, the present invention also includes a case where the function of the above-described embodiment is realized by controlling the operation of the system or the device of the present embodiment by the control unit provided by the board or the function expansion unit. It should be noted that the present invention can be implemented in various forms without departing from its spirit or its main features.
[0168] For example, in the transmission phase of the present embodiment, the case where the transfer of information data of one object is executed by using the Asynchronous Write transaction conforming to the IEEE1394-1995 standard has been described, but the present invention is not limited thereto. For example, it may be configured to transmit information data of one object by a transaction using Asynchronous Streams packets conforming to the IEEE1394.a standard. The configuration of the Asynchronous Streams packet is the same as that of the Isochronous packet conforming to the IEEE1394-1995 standard.
[0169] In this case, the packet for transmitting each segment data is not transmitted one-to-one to a specific destination, but is broadcast by designating a predetermined channel number. Therefore, the above embodiments are merely exemplary in all respects and should not be construed in a limited way.
[Effect of the Invention] As described above, the present invention.<u style="single">Data communication system and data communication equipment</u>According to<u style="single">, In the case where the data to be transmitted is divided into a plurality of segments, the segment is divided into a plurality of segment data, and the plurality of segment data is transmitted to the receiving side data communication device.</u>The amount of data in the segment<u style="single">Appropriate</u>To<u style="single">control</u>can do<u style="single">。</u>BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a sequence chart for explaining in detail the transmission phase of the first embodiment according to the present invention.
FIG. 2 is a flowchart illustrating a procedure of a transmission phase of the first embodiment in detail.
FIG. 3 is a sequence chart for explaining the transmission phase of the second embodiment in detail.
FIG. 4 is a flowchart illustrating the procedure of the transmission phase of the second embodiment in detail.
FIG. 5 is a sequence chart for explaining the communication protocol of the third embodiment in detail.
FIG. 6 is a flowchart illustrating a procedure of a communication protocol according to a third embodiment in detail.
FIG. 7 is a sequence chart for explaining the communication protocol of the fourth embodiment in detail.
FIG. 8 is a diagram illustrating a buffer configuration included in a source 702 and a destination 703.
FIG. 9 is a diagram illustrating a configuration of a buffer included in a source and a destination.
FIG. 10 is a diagram showing a configuration of a conventional communication system.
FIG. 11 is a diagram illustrating a data transfer method included in a conventional communication system.
FIG. 12 is a sequence chart illustrating a conventional communication protocol.
FIG. 13 is a diagram illustrating a relationship between information data asynchronously transferred from source 1202 and a receive buffer of destination 1203.
FIG. 14 is a sequence chart for explaining the second phase in FIG. 12 in detail.
[Code Description] 101 Controller 102 Source 103 Destination
Every citation, both ways
| Document | Relation | Office |
|---|---|---|
| JP09091100A | Cites | Japan |
| JP07058806A | Cites | Japan |
| JP10063578A | Cites | Japan |
| JP09083771A | Cites | Japan |
76 members in 7 offices
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 11972798 | Japan | A | |
| JP19980119727 | – | – | – |
Members76
| Document | Office | Kind | |
|---|---|---|---|
| EP0938218A2 | European Patent Office (EPO) | A2 | |
| EP0939529A2 | European Patent Office (EPO) | A2 | |
| EP0939530A2 | European Patent Office (EPO) | A2 | |
| JPH11252153A | Japan | A | |
| JPH11261608A | Japan | A | |
| JPH11261621A | Japan | A | |
| KR19990072861A | Republic of Korea | A | |
| KR19990072864A | Republic of Korea | A | |
| KR19990072911A | Republic of Korea | A | |
| KR19990072916A | Republic of Korea | A | |
| KR19990072917A | Republic of Korea | A | |
| KR19990072918A | Republic of Korea | A | |
| CN1233023A | China | A | |
| JPH11298509A | Japan | A | |
| JPH11308255A | Japan | A | |
| JPH11308256A | Japan | A | |
| JPH11313091A | Japan | A | |
| JPH11313124A | Japan | A | |
| CN1234671A | China | A | |
| CN1234672A | China | A | |
| JPH11317755A | Japan | A | |
| CN1235303A | China | A | |
| CN1235460A | China | A | |
| CN1235462A | China | A | |
| JPH11355319A | Japan | A | |
| JPH11355320A | Japan | A | |
| JP2000032005A | Japan | A | |
| JP2000032010A | Japan | A | |
| EP0984600A2 | European Patent Office (EPO) | A2 | |
| EP0984601A2 | European Patent Office (EPO) | A2 | |
| EP0984602A2 | European Patent Office (EPO) | A2 | |
| EP0938218A3 | European Patent Office (EPO) | A3 | |
| EP0939529A3 | European Patent Office (EPO) | A3 | |
| KR100294960B1 | Republic of Korea | B1 | |
| KR100311706B1 | Republic of Korea | B1 | |
| KR100311707B1 | Republic of Korea | B1 | |
| KR100312276B1 | Republic of Korea | B1 | |
| CN1119001C | China | C | |
| US2003156093A1 | United States of America | A1 | |
| US2003172201A1 | United States of America | A1 | |
| US2003193948A1 | United States of America | A1 | |
| KR100407095B1 | Republic of Korea | B1 | |
| US6678769B1 | United States of America | B1 | |
| US6690648B2 | United States of America | B2 | |
| CN1161940C | China | C | |
| US6804250B2 | United States of America | B2 | |
| CN1179280C | China | C | |
| CN1184786C | China | C | |
| CN1184787C | China | C | |
| US6895003B1 | United States of America | B1 | |
| US7002964B1 | United States of America | B1 | |
| MY123326A | Malaysia | A | |
| MY125043A | Malaysia | A | |
| JP3814407B2 | Japan | B2 | |
| JP3862403B2 | Japan | B2 | |
| KR100664634B1 | Republic of Korea | B1 | |
| CN1301471C | China | C | |
| MY128864A | Malaysia | A | |
| EP0939529B1 | European Patent Office (EPO) | B1 | |
| DE69935940D1 | Germany | D1 | |
| JP4026979B2 | Japan | B2 | |
| MY134779A | Malaysia | A | |
| DE69935940T2 | Germany | T2 | |
| JP4046846B2This record | Japan | B2 | |
| JP4065466B2 | Japan | B2 | |
| MY135481A | Malaysia | A | |
| JP4143205B2 | Japan | B2 | |
| MY138138A | Malaysia | A | |
| EP0984601A3 | European Patent Office (EPO) | A3 | |
| EP0938218B1 | European Patent Office (EPO) | B1 | |
| US7590133B2 | United States of America | B2 | |
| DE69941313D1 | Germany | D1 | |
| EP0939530A3 | European Patent Office (EPO) | A3 | |
| EP0984600A3 | European Patent Office (EPO) | A3 | |
| EP0984602A3 | European Patent Office (EPO) | A3 | |
| JP4428750B2 | Japan | B2 |
14 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Cancellation because of no payment of annual feesLAPS | LAPS | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Certificate of patent or registration of utility modelJAPANESE INTERMEDIATE CODE: R150R150 | R150 | |
| First payment of annual fees (during grant procedure)JAPANESE INTERMEDIATE CODE: A61A61 | A61 | |
| Written decision to grant a patent or to grant a registration (utility model)JAPANESE INTERMEDIATE CODE: A01A01 | A01 | |
| Decision of grant or rejection writtenTRDD | TRDD | |
| Written amendmentJAPANESE INTERMEDIATE CODE: A523A521 | A521 | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 | |
| Report on retrievalJAPANESE INTERMEDIATE CODE: A971007A977 | A977 | |
| Written request for application examinationJAPANESE INTERMEDIATE CODE: A621A621 | A621 |
Numbers
- Publication
- 4046846
- Publication, DOCDB
- 4046846
- Publication, EPODOC
- JP4046846B
- Application
- 11972798
- Application, DOCDB
- 11972798
- Application, EPODOC
- JP19980119727
Titles2
- Japanese
- データ通信システム及びデータ通信装置
- English
- Data communication system and data communication equipment
Classification
- IPC, 4
- H04L29 08
- G06F13 38
- H04L12 40
- H04L12 44