WO1997042734A1 - Procede et dispositif de transmission de donnees - Google Patents

Procede et dispositif de transmission de donnees Download PDF

Info

Publication number
WO1997042734A1
WO1997042734A1 PCT/JP1997/001541 JP9701541W WO9742734A1 WO 1997042734 A1 WO1997042734 A1 WO 1997042734A1 JP 9701541 W JP9701541 W JP 9701541W WO 9742734 A1 WO9742734 A1 WO 9742734A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
time
cycle
packet
network
Prior art date
Application number
PCT/JP1997/001541
Other languages
English (en)
French (fr)
Inventor
Junichi Fujimori
Yoshihiro Inagaki
Hirotaka Kuribayashi
Yasushi Ohtani
Tatsutoshi Abe
Original Assignee
Yamaha Corporation
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
Priority claimed from JP13762396A external-priority patent/JP3317140B2/ja
Priority claimed from JP20098896A external-priority patent/JP3309722B2/ja
Priority claimed from JP20098996A external-priority patent/JP3440704B2/ja
Priority claimed from JP35465596A external-priority patent/JP3201298B2/ja
Application filed by Yamaha Corporation filed Critical Yamaha Corporation
Priority to DE69735415T priority Critical patent/DE69735415T2/de
Priority to EP97918381A priority patent/EP0895378B1/en
Priority to AU26514/97A priority patent/AU2651497A/en
Publication of WO1997042734A1 publication Critical patent/WO1997042734A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40058Isochronous transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • H04J3/0632Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40091Bus bridging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40117Interconnection of audio or video/imaging devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving management of server-side video buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4143Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a Personal Computer [PC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4305Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43072Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network
    • H04N21/43632Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network involving a wired protocol, e.g. IEEE 1394
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer

Definitions

  • the present invention relates to a data transmission method and a system for transmitting a plurality of data such as digital audio data having a time-sequential array of a predetermined period via a network.
  • the present invention relates to a data transmission method and a system in which a data format is configured and transmitted on a transmission side so that an accurate time relationship can be reproduced on a reception side.
  • the present invention relates to a data transmitting / receiving device and a data transfer system for transferring data with a time stub added thereto via a network.
  • the present invention provides a method for receiving time-stamped data received from a segment on a network and providing a different segment on the network. It relates to a data transfer method that is transmitted to
  • the present invention relates to a method and an apparatus for synchronizing network data.
  • synchronous and asynchronous there are two types of data transmission methods over networks: synchronous and asynchronous.
  • the transmitting side and the receiving side operate in synchronization with each other, so that the transmitting side is suitable for transmitting audio data that requires accurate reproduction of the temporal position of information on the receiving side.
  • it is necessary to provide a configuration for achieving synchronization between transmission and reception such as by providing a separate synchronization signal line, and to secure the communication band statically by achieving synchronization.
  • the above-mentioned drawbacks can be avoided by dynamically securing the communication band.
  • a certain method is required. If you do not issue asynchronous packets after summarizing the degree of information, Data communication efficiency will decrease. However, transmission of a packet containing a certain amount of information results in the loss of the information of the original temporal position E of the data. Therefore, in a data transmission method using a packet, it is considered that time information indicating the time position of the data is transmitted together with the data. That is, time information called "time stamp" indicating the time position is added to each data, and these are included in one packet and transmitted.
  • a synchronous communication method in which a transmitting side and a receiving side continuously transmit signals of the same cycle, and intermittent time intervals
  • the fact that there is an asynchronous communication system that transmits a specified unit of information that is an interval is a power that is exactly as it is; and, furthermore, an IT-chronous (1 sock ronou s) transfer system that is positioned between these There is.
  • this asynchronous transfer method it is possible to secure data in advance and perform highly real-time data transfer with guaranteed time delay.
  • the isochronous transfer method will be described with reference to FIG.
  • FIG. This figure shows an example of the arrangement of packets on the bus in a system called the IEEE 1394 high-speed serial bus, with the cycle start bucket 101 and the isochronous packet.
  • packet 102 There are three types of packets on the network: packet 102 and asynchronous (asynchronous) packet 103.
  • a broken line indicates a first timing signal (cyle synch) which is used as a reference in this system, and the first timing signal has a period of 125 sec. 8 KHz).
  • the cycle start packet 101 is a packet transmitted from a node called a cycle master out of a plurality of nodes connected to the bus, and the cycle start packet 101 is a cycle start packet.
  • a new transmission cycle is started by packet 101.
  • the cycle master has a precise clock source, and transmits the cycle start packet 101 at a time interval of the first timing signal from the clock source. Attempt to transmit; When the transfer of another packet is in progress, the transmission of the cycle start packet 101 is waited until the transfer is completed. It is being done. 104 indicates this delay time (start delay), and this delay time is encoded into the cycle start packet 101 and sent to each node. You. Note that it is guaranteed that a packet transmitted from the node is received by another node within the same clock period.
  • Each node has a 32-bit cycle timer register.
  • Each cycle timer register uses the lower 12 bits to generate a clock signal of 24.576 MHz which is the reference clock of the system (period of 40.7 MHz). nsec) is calculated modulo 3 072, the upper 13 bits are used to count the 8 KHz reference cycle, and the upper 7 bits are used to count seconds. Is set to 0. Then, the self-cycling master previously described uses the cycle start packet 101 to store all the contents of the self-cycling timer register. Copy to the node's cycle timer and synchronize all nodes within a certain phase difference. In this way, a common time reference is guaranteed in this network.
  • the ITRONA packet 102 is a channel used to transfer data that requires precise timing reference, such as digital sound, video or performance data. It is guaranteed that these isochronous packets 102 are always transmitted in each transport cycle. For example, these isochronous packets 102 are guaranteed to be transmitted on a maximum of 63 channels over a length of 100 "s in each transmission cycle.
  • the asynchronous packet 103 is a packet that is transmitted asynchronously when the transmission cycle has an idle time after the transmission of the isochronous packet 102 is completed. It is.
  • the maximum length of an asynchronous packet is 75 ⁇ s. In this case, because of the asynchronous packets transferred is transferred to the packetized preparative is completed, it is transferred over the period of the Sai click Rutai mer occurs c
  • the transmission path is assumed to be a completely synchronous communication system. Otherwise, in order to guarantee the reproducibility of the transmitted data on the time axis, a time stamp indicating the time at which the data should be reproduced is added to the data itself and transmitted. By referring to the time stamp, The data is reproduced at the time when the data reaches.
  • the time stub used on such a network must be able to uniquely recognize time.
  • a time stamp requires a repetition period longer than a time width that seems to be appropriate to some extent, and for that purpose, a large amount of information is required.
  • many information locations correspond to a large number of bits.Therefore, to increase the time resolution of the time information specified by the time stamp, a large amount of information, that is, However, a large number of bits will be required. For example, in the platform described with reference to FIG. 25, a time stamp having a length of 32 bits is used.
  • time stamp can be expressed as a relative value in order to reduce the data location of the time stamp.In this way, the place where jitter exists in the transmission route, the relative time relationship between data could be lost.
  • an SMPTE time code is known as an example of such a time scumb.
  • This is a time code defined by the SMTPE (Society of Motion Picture and Television Engines), and is a video data for one frame per frame.
  • An 80-bit address (composed of the time code displayed in ⁇ hours, minutes, seconds ⁇ frames and user bits) is added to the data, and the editing process is performed. It is used for synchronized running of multiple materials and devices.
  • a network that transmits data that requires precise timing reference, such as digital sound data, digital video data, or performance data, using a network requires a time base of these data. It is necessary to guarantee the reproducibility at the time.
  • the generated data is transferred to another node via a plurality of paths so as to pass through a node that executes the corresponding processing. Therefore, each data arrives at the output node with different delay time due to the processing time at the node in each path, and the reproducibility of the data on the time axis is maintained. You will not be able to do so.
  • nodes 1 (N 1) to 4 (N 4) are connected by four node forces IEEE 1394.
  • various devices S for configuring the system can be nodes, but here, for example, it is assumed that a musical sound generating device is configured as a whole, and Node 1 is a sound source device, Node 2 is an effector for adding vibrato to a musical sound, Node 3 is an effector for panning a musical sound, and Node 4 is an effector for each musical signal.
  • a plurality of musical tones are output from the sound source device Node 1 at predetermined timings (frames), and these musical tones are output as they are. Examples of what is added, vibrato added, panned, and what is further panned after adding vibrato For example, there are four types.
  • the tone generator of the node 1 outputs the various types of musical tones to the network channels corresponding to the thirteen types of processing before the musical tone.
  • Node 2 Node 2
  • Node 3 and Node 4 each have a preset network channel to receive themselves and receive from that network.
  • the data of the channel to be received among the data of each channel to be received is taken in, and a predetermined process is performed, for example, vibrato, panning, mixing, and the like. Then, if necessary, the data for which the processing has been completed is transmitted to the network again.
  • Fig. 27 shows an example of the arrangement of each channel on the network. As shown in the figure, the budget corresponding to each channel is arranged on the time axis with a predetermined gap therebetween.
  • the packet may be any one of the packet by the iTunes transfer and the normal packet “.”.
  • the tone generator of the node 1 does not perform the effect processing of the generated tone data.
  • the signal is sent directly from the node 1 to the node 4 as a mixer via the above-mentioned network, for example, via a first channel c1 (A14.
  • the tone to be applied is transmitted to the node 2 which is a repurb processing unit via the second channel (A12), and the tone to be panned is assigned to the third channel, for example.
  • the reverb processing unit of the node 2 determines that the tone data (A12) of the second channel c2 in the network is received by itself, and Read the overnight and perform the specified reverb processing. Then, among the tone subjected to reverberation processing, the musical tone that is a further subjected to panning, sends it to the node 3 is panning processing unit sends out the fourth channel C h 4 (A 1 2 3) . In addition, the tone data to which no panning is applied is sent to node 4 which is the mixer (A124) o The tone data sent to this node 4 is sent using, for example, channel ch5. Is done.
  • the panning processing unit of the node 3 includes the tone data (A13) transmitted from the node 1 through the channel ch3, and the previous K node 2 through the c4.
  • the transmitted tone data (A123) is determined to be a tone to be processed by itself, the tone data is received, and a predetermined panning process is performed.
  • the tone data received and panned from the channel ch 4 is transmitted to the node 4 via the channel ch 6 (A1234), and
  • the musical tone received through the channel channel ch3 and subjected to the panning process is transmitted to the node 4 through the channel channel 7 (A134).
  • the tone generated at the node 1 arrives at the mixer of the previous node 4 through the following four routes.
  • Tone data (A14) transmitted directly through the channel chl (2) Ch5 data (A12) subjected to reverberation processing at node 2 4), (3) Ch 6 data (A1 2 3 4) that has undergone reverberation processing at Node 2 and has undergone panning processing at Node 3, and (4) Ch7 data panned on Node 3 (A134)
  • the musical tone data generated at node 1, which is the sound source reaches the mixer of node 4 through different paths, but the processing for the respective processing is performed at nodes 2 and 3. Since the execution time is required, even when the tone is generated from node 1 at the same timing, the time at which it arrives at node 4, which is a mixer, differs depending on the route that passes. Become. Here, assuming that the time required for processing at node 2 is a 2 and the time required for processing at node 3 is a 3, the route passes through the routes (2), (3), and (4) described above. The data arrives at the node 4 with a delay of a2, a2 + a3, and a3, respectively, with respect to the data passing through the route of (1). . As a result, a timing shift occurs at the time of addition in the mixer of node 4.
  • the difference in the arrival time of data through each route is different for each node.
  • the timing at which each node sends data to the network may fluctuate depending on traffic congestion equipment, etc.
  • the processing time at each node is not always a fixed time, there are many cases where the difference between the arrival times does not become a fixed value. Disclosure of the invention
  • the present invention has been made in view of the above points, and is intended to reproduce a time relationship between a plurality of data having a time-series arrangement with a fixed period, such as digital audio data, on a receiving side.
  • asynchronous bucket is used so that the advantages can be enjoyed, and at the same time, the time information to be transmitted in the packet is transmitted as little data as possible. It is a first object of the present invention to provide a data transmission system capable of reducing the number of transmission data per packet in terms of a quantity.
  • Another object of the present invention is to provide a data transmission method that minimizes the time delay between transmission and reception.
  • the present invention provides a data transfer in which time stubs are added to data for transmission so that transmitted data can be reproduced over time.
  • the second objective of the system is to improve the data transfer efficiency by reducing the number of time stamp bits.
  • the third object is to provide a data cultivation method that does not lose the relative time relationship between data.
  • a fourth object of the present invention is to solve the above-mentioned problems and to allow data that has passed through a plurality of routes on a network to reach a predetermined node in synchronization.
  • a data transmission method is characterized in that: (a) on the transmitting side, a plurality of data streams having a time-series arrangement of a predetermined cycle; A step of specifying one data for each of two or more predetermined numbers of data, and adding time information indicating a time position of the specified data; and A step of transmitting the data and the time information added to any of the data as one packet to a network, and (b) a receiving side.
  • the step of receiving And a step for controlling the reading based on the time information included in the gate so that reproduction is performed at a cycle corresponding to the predetermined cycle. I do.
  • one data is specified for every two or more predetermined numbers of data without adding time information to all data, and the specified data is Is added to the time information.
  • one packet is formed by a predetermined number of data, and the time information added to any of the data is included in the one packet, so that the packet is Send over the network.
  • the receiving side temporarily stores the data contained in the packet received through the network, and reads out the temporarily stored data in the received packet.
  • reproduction is performed at a cycle corresponding to the original predetermined cycle. Therefore, it is possible to enjoy the advantages by adopting the asynchronous packet, and since only one time information is included in one packet, the time information is represented by a data amount as small as possible and one packet is used. The transmission data per hit can be reduced.
  • the data transmission method includes: (a) providing a plurality of data having a time-series arrangement of a first cycle on a transmission side; A step of specifying one data for every predetermined number of the data and adding time information indicating a time position of the specified data; and a predetermined second cycle longer than the first cycle.
  • Each time the data and the data filled in one cycle of the second cycle (B) transmitting the time information added to any one of the above as one packet to a network, and A step of receiving the packet via a packet, a step of temporarily storing previous data included in the received packet, and a step of sequentially reproducing and reading the temporarily stored data. Controlling the reading based on the self-time information included in the received packet so that reproduction is performed at a cycle corresponding to the first cycle. Steps are provided.
  • one data is specified for every two or more predetermined numbers of data without adding time information to all data
  • Time information is added to the specified data.
  • a bucket is formed by the data supplied within one period of the second period, and The time information added to any of the data is included in the one packet, and the packet is transmitted via the network.
  • the receiving side temporarily stores the data included in the packet received via the network, and sequentially reads the temporarily stored data into the time information included in the received packet. Based on this control, the reproduction is performed in a cycle corresponding to the original first cycle.
  • the advantage can be enjoyed by adopting the asynchronous packet, and at the same time, since only one time information is included for each budget, only the time information can be obtained. It is possible to reduce the amount of transmitted data per packet by expressing with a small amount of data.
  • packet transmission is performed every predetermined second period, so that it is not necessary to wait until a predetermined number of data is accumulated, and a time delay between transmission and reception can be achieved. It is possible to provide a data transmission system with a minimum number.
  • the meaning of the asynchronous packet described here is that the packet transmission cycle is set independently of the original sample data to be transmitted, independent of the sampling cycle. It means that there is. Since transmission and reception of the packet itself is performed at a fixed period, it is synchronous communication.
  • a data transmitting apparatus includes a time stub represented as differential data from a first timing signal having a fixed period.
  • a data transmission device for transmitting the added transmission data to a network based on a second timing signal generated in accordance with the first timing signal;
  • a buffer for transmitting the transmission data to the FIF0 buffer based on the first timing signal, and the FIF0 buffer based on the second timing signal.
  • the transmission data is extracted from the network and transmitted to the network.
  • the data receiving device g of the present invention has a time stamp represented as differential data from the first timing signal having a fixed period added thereto, and the data receiving device g is added to the first timing signal.
  • the data transfer system of the present invention has a data transmitting device and a data receiving device, and has a second timing generated in accordance with a first timing signal having a fixed period.
  • a data transfer system in which data transfer on a network is controlled based on a signal, wherein the data transmission / reception device determines a difference between the first timing signal and the first timing signal.
  • the time stamp represented by the time stamp is added to the transmission data, and the transmission data to which the time stamp is added is added to the first F1F buffer based on the first timing signal.
  • the transmission data is extracted from the first F1F buffer based on the second timing signal, and transmitted on a network. 2 based on the timing signal of 2.
  • the data transfer method of the present invention follows a cycle start packet using a nominally defined cycle and a band secured for each cycle. Isochronous communication for transmitting data through the A data transfer method of a communication method for performing asynchronous packet communication for transmitting and receiving data using a remaining period, wherein the required period of the isochronous communication and the asynchronous packet communication are described. The cycle obtained by adding the required cycle of the packet communication can exceed the cycle of the cycle.
  • the data to which the reproduction time stamp for determining the reproduction time is added is received, the data is transmitted.
  • the delay time at which the received data is delayed is detected with reference to the cycle start packet generated by the controller, and the start time of the cycle to which the cycle start packet belongs is added to the start time of the cycle.
  • the time obtained by adding one cycle time of the clock and the detected delay time is added to the received data as a transfer time stamp, and the time of the transfer time stamp knob is reached.
  • the transfer of the received data is prepared.
  • a bridge in which the data is inserted and arranged in a network is received from a certain segment, and the bridge reaches the time of the transfer time stamp.
  • the received data is added to a waiting buffer when the data is passed or exceeded, and when a predetermined cycle start packet is transmitted to a different segment, the The received data is added from a standby buffer to a transmission buffer, and the received data is transmitted to the different segment.
  • the playback time stamp is a relative time stamp in the cycle, and the playback time stamp is received by the reception time stamp.
  • a new time stamp is added to the start time of the cycle indicated by the cycle start packet preceding the transmitted data, and the cycle time of the cycle is added.
  • the data is replaced, and when the time of the new time stamp has been reached or exceeded, the reproduction process of the previous S-received data is performed.
  • the delay time of the received data from the cycle start packet is added to the start time of the cycle indicated by the cycle start packet, together with one cycle time of the cycle.
  • the added time is added to the received data as a transfer time stamp, so that data transfer can be performed efficiently and the relative time relationship between data is prevented from being lost. can do.
  • a cycle start packet preceding the received data is added to the playback time stamp.
  • the start time of the cycle to which the cycle belongs and the one cycle time of the cycle are added to generate a new timestamp, and the playback timestamp is set to this timestamp. Since the time stamp is replaced with an imstamp, the relative time relationship between the data can be obtained even if the bit length of the reproduction timestamp does not have to be as long as 32 bits. It is possible to efficiently reproduce data without losing data.
  • a method for synchronizing network data of the present invention is a method for synchronizing data in which a plurality of nodes are transferred on a connected network.
  • a node transmitting a plurality of data required to be synchronized transmits a plurality of data to the network by adding a predetermined data mark to the plurality of data, and receives data from the network.
  • the node synchronizes the plurality of received data by referring to the data mark.
  • the network data synchronizer of the present invention is a data synchronizer for transferring a plurality of nodes over a network to which a plurality of nodes are connected, wherein the network Based on the data mark included in the data received from, a plurality of received data to which the same data mark is added are synchronized.
  • the network node has a function of the network data synchronization device.
  • FIG. 1 is a timing chart illustrating some specific examples of a data transmission method and a system according to the present invention in an illustration.
  • FIG. 2 is a schematic block diagram showing the overall configuration of one embodiment of the data transmission method and system according to the present invention.
  • FIG. 3 is a flow diagram schematically illustrating an example of a transmission preparation process performed on the transmission side in FIG. 2
  • FIG. 4 is a flow diagram schematically illustrating an example of a transmission interruption process performed on the transmission side in FIG.
  • FIG. 5 is a ⁇ -diagram schematically illustrating an example of a reception process performed on the reception side in FIG. 2
  • FIG. 6 is a hardware configuration of a device that can be used on both the transmission side and the reception side in FIG. Block diagram showing
  • FIG. 7 is a process diagram showing the outline of a second embodiment of the data transfer system according to the present invention. Diagram,
  • FIG. 8 is a block diagram showing a hardware configuration of each station (that is, a node) in the data transfer system of FIG. 7,
  • FIG. 9A is a functional block diagram illustrating a transmission device in the data transfer system of FIG. 7,
  • FIG. 9B is a functional block diagram for explaining a receiving device in the data transfer system of FIG. 7,
  • FIG. 10A is a diagram for explaining an example of a transmission packet in chronological order.
  • FIG. 10B is a diagram showing an example of a data configuration of one packet according to the present invention.
  • FIG. 10C is a diagram showing an example of a data structure of one packet according to the conventional technology.
  • FIG. 11 is a timing chart for explaining the operation of the data transfer system according to the second embodiment of the present invention.
  • FIGS. 12A to 12C are flowcharts showing processing examples on the transmission side in the data transfer system according to the second embodiment.
  • FIGS. 13A to 13C are flowcharts showing a processing example on the receiving side in the data transfer system according to the second embodiment.
  • FIG. 14 is a diagram for explaining an example of a transmission packet in time series.
  • FIG. 15 is a block diagram showing an example of the configuration of a network to which the third embodiment of the data transmission system according to the present invention is applied.
  • FIG. 16 is a timing chart for explaining the operation of the data transfer system according to the third embodiment.
  • FIG. 17 is a flowchart of the cycle start interrupt processing on the receiving side in the data transfer system according to the third embodiment.
  • FIG. 18 is a flowchart of a data reception interrupt process in the data transfer system according to the third embodiment.
  • FIG. 19 is a flowchart of a timer interrupt process in the data transfer system according to the third embodiment.
  • FIG. 20 is a diagram showing a configuration example of an embodiment of a network system to which a network data synchronization method according to a fourth embodiment of the present invention is applied
  • FIG. 21 is a diagram for explaining the timing at which data reaches in the fourth embodiment.
  • FIG. 22 is a flow chart for explaining the edict of a node sending data in the fourth embodiment
  • FIG. 23 is a flowchart for explaining the operation of the receiving node in the fourth embodiment.
  • FIG. 24 is a flowchart for explaining the operation of the reception node for synchronization control in the fourth embodiment.
  • FIG. 25 is a diagram for explaining a conventional example of a packet on a network.
  • Figure 26 shows an example of a conventional network system.
  • FIG. 27 is a diagram for explaining an example of a data channel in a network. BEST MODE FOR CARRYING OUT THE INVENTION
  • an example of a data transmission scheme is illustrated in the illustration ⁇ 3, and (b) and (c) are data transmission schemes according to the second IS point. c different two examples is intended to illustrate I La be sampled to the
  • SF indicates one cycle of the service section of the packet transmission, and the cycle T of the data to be transmitted is variable as appropriate, whereas in the asynchronous packet, one cycle of the service section SF is a predetermined value. It is fixed to. Therefore, the time relationship between SF and T is not limited to the one shown in the figure, but can take any time relationship. Have a non-integer multiple relationship (of course, it may happen to be an integer multiple relationship).
  • the second row of each of Fig. 1 (a), (b), and (c) shows the status of the packet transmitted via the network, and is shown in the time slot frame.
  • the third row in each of FIGS. 1 (a), (b) and (c) shows the state of data reproduction on the receiving side.
  • N 4 in the example in the figure
  • the first data of the packet is specified, and 3 ⁇ 4 the time stamp indicating the time position of the specified first data It is set to 0 to add a pump.
  • the first packet consists of four data with ordinal numbers 0, 1, and 2.3, and a time stub “0” indicating the time position of the leading ordinal 0 data is added.
  • the second ',' packet consists of four data with ordinal numbers 4, 5.6 and 7, and the time stamp "1" indicating the time position of the first ordinal data 4 7 "is added.
  • the service section SF (which is denoted by SF 4) following the service section SF (which is denoted by SF 4) to which the last data of the ordinal number 7 included in the second packet is supplied. )
  • the second packet is transmitted, so the second packet is transmitted two service intervals after the transmission of the first packet ',.
  • the original predetermined period ⁇ ⁇ ⁇ ⁇ on the transmitting side can be estimated based on the change or function of the time stamp included in each packet given in sequence.
  • Various possible forces in the method of estimating the original period ⁇ ⁇ ⁇ based on the time stamp The most typical method is as follows from the difference between the time stamps included in two consecutive packets. It is to perform various calculations. In other words, the packet transmitted this time Assuming that the time stamp value is TS (i) and the time stub value of the packet transmitted before is TS (i-1), there are N data in between.
  • the original period T can be estimated by performing the following calculation.
  • the receiving side sequentially reproduces and reads out the data included in the received packet at a cycle corresponding to the original cycle T estimated in this way.
  • data reproduction with the original cycle T can be ensured.
  • the data playback starts on the receiving side only at the first time on the transmitting side.
  • the service interval SF has passed five cycles since the data (ordinal number 0) was supplied, that is, the sixth service interval SF6 in FIG.
  • the transmission method according to the first tS point When the number of packets per packet is a predetermined fixed number N, the rising delay of packet transmission and the data recovery on the receiving side Delay in starting is a problem.
  • the transmission method according to the second viewpoint can improve this point and avoid such a delay problem as much as possible.
  • the difference between the transmission system according to the second viewpoint and the transmission system according to the first viewpoint, which is illustrated in FIGS. 1 (b) and (c), is as follows. Packet transmission is not performed until packet data is collected, and packet transmission is performed regularly at every predetermined second period, and accordingly, one packet is transmitted. The point is that the number of data items that make up is variable. That is, every predetermined second period longer than the first period ⁇ ⁇ which is the original period of the data to be transmitted, the previous S-self data supplied within one period of the second period.
  • one packet is formed, so that packet transmission is performed every second cycle, and since the relationship between the first and second cycles is generally a non-integer multiple (of course, However, the number of data included in one cycle of the second cycle fluctuates variably (within a range of ⁇ 1). Will be.
  • FIGS. 1 (b) and (c) it is shown that the packet transmission is performed in a cycle of one service section SF as the second cycle of performing packet transmission.
  • Fig. 1 (b) for each service section, the data supplied in that section is included in one packet and transmitted to the network in the next service section.
  • the number X of data contained in one packet is variable, and is 3 or 2 in the example in the figure.
  • the head data of the packet is specified, and the time position of the head data specified by the key is determined.
  • the indicated time stub is added. Therefore, a time stamp is added to a predetermined number of data 2 or more, and the predetermined number is a variable number linked to a variable 1 packet '.
  • the first packet consists of three data with ordinal numbers 0, 1, and 2, and a time stamp "0" indicating the time position of the data with ordinal 0 at the beginning is added.
  • the first bucket is transmitted after the first data section (ordinal number 0) has been supplied and after the lapse of one service section SF, that is, at the time of the second service section SF2. You. Therefore, the rise time delay of packet transmission is only one service section SF.
  • the second packet consists of two data with ordinal numbers 3 and 4, and a time stamp “1 3” indicating the time position of the ordinal 3 data is added. In this case, the second packet in the service section (SF 3) following the service section (SF 2) to which the last ordinal 4 data contained in the second packet was supplied. Is transmitted, so the second packet is transmitted at the time of the first packet transmission or one service interval later.
  • the original predetermined period T on the transmitting side can be estimated based on a change or a function of the time stamp included in each packet sequentially given.
  • the most typical method is the difference between the time stamps included in two adjacent packets. Since the following operation is performed from, the operation expression for this case is as follows.
  • TS (i) and TS (i-1) are the time stamp value of the packet transmitted this time and the time stamp value of the packet transmitted last time. Value.
  • X is the number of data included in the previously transmitted packet, and is a variable as described above.
  • the receiving side sequentially reproduces and reads out the data contained in the received bucket at a cycle corresponding to the original cycle estimated in this way.
  • data reproduction in the original cycle ⁇ can be ensured.
  • the second packet is transmitted in the third service section SF3 counted from when the first data (ordinal number 0) is supplied on the transmitting side, so that The data reproduction starts on the receiving side after the first data (ordinal number 0) has been supplied on the transmitting side, and after three cycles of the service section SF have elapsed, that is, in the fourth service section SF 4. It is time.
  • FIG. 1 (b) the second packet is transmitted in the third service section SF3 counted from when the first data (ordinal number 0) is supplied on the transmitting side, so that The data reproduction starts on the receiving side after the first data (ordinal number 0) has been supplied on the transmitting side, and after three cycles of the service section SF have elapsed, that is, in the fourth service section SF 4. It is
  • the example of FIG. 1 (c) is a further improvement on the example of FIG. 1 (b), which simplifies the calculation processing on the receiving side.
  • the data supplied by the section included in 1 Ke Tsu bets, c to be transmitted in the next service interval the nets work As in b), the number X of data contained in one bucket is variable, and in the example shown in the figure, it is three or two.
  • the way of adding the time information is different from that of (b). That is, in the example of FIG. 1 (c), ⁇ data is specified for each data consisting of two or more predetermined constants M.
  • a time stamp indicating the time position of the specified data that is, time information is added.
  • M is 4, and a time stamp indicating the time position of the data at the head of the group is added to each of the four data groups. Therefore, a time stamp is added for every predetermined number of data of 2 or more; unlike the example of (b), the predetermined number is a variable number of data constituting one packet. Is a constant M ("4" in the figure), unrelated to.
  • a time stamp "0" indicating that is added.
  • the first data (ordinal 0)
  • the first packet "” is transmitted after the elapse of one service section SF from the transmission of the ".” Signal. Therefore, the rise time delay of the packet transmission is similar to that of Fig. 1 (b).
  • This platform also has the last ordinal 4 data included in the second packet. Since the second packet is transmitted in the service section (SF3) following the service section (SF2) to which the data was supplied, the first packet is transmitted from the first packet transmission. The second bucket is transmitted after service section SF.
  • the receiving side also estimates the original predetermined period ⁇ on the transmitting side based on the change or function of the time stamp included in each packet given sequentially. can do.
  • the most typical method is the time stamp included in two adjacent packets. Since the following calculation is performed from the difference between the two, the calculation formula for this platform is as follows.
  • TS (i) is the time stamp value of the packet transmitted this time
  • TS (i- ⁇ ) is the valid time stamp transmitted earlier. Value. Therefore, in the packet transmitted this time, the time stamp
  • this operation is not performed. If the time stamp value of the previously transmitted bucket has a valid value other than "V0id”, the TS (i- ⁇ ) will return the packet transmitted last time. Time stamp value TS (i-1), but if the above transmitted "Void" was included instead of the time stamp in the previously transmitted bucket, TS (i —1 ') is equivalent to the time stamp value TS of the bucket transmitted twice before.
  • M is a constant indicating the number of data in the data groove to which one time stub is added, as described above.
  • the receiving side sequentially reproduces and reads out the data contained in the received packet at a period corresponding to the original (original) period T estimated in this way.
  • the second packet is transmitted in the third service section SF3, counting from the time when the first data (ordinal number 0) is supplied on the transmitting side.
  • the data reproduction starts on the receiving side after the first data (ordinal number 0) is supplied on the transmitting side, and the fourth service section SF after three service section SF cycles have elapsed. It will be 4 Therefore, in the case of FIG. 1 (c), the rise of the packet transmission and the start of data reproduction on the receiving side are earlier than in the case of FIG.
  • connection shown in Fig. II (c) is a connection that divides by a fixed number M as shown in Equation 3 above.
  • the configuration of the arithmetic processing is simpler than the configuration in which the division is performed by the variable number X as in the above Expression 2.
  • the fixed number M is a value of a power of 2, such as 4 or 8
  • the digital division of Equation 3 can be performed by simple data shift processing, which is advantageous. Therefore, according to the example shown in Fig. 1 (c), when the time information is expressed with a small amount of data, the data transmission by the asynchronous baggage that can simplify the processing for reproducing the time information on the receiving side as much as possible
  • a method can be provided.
  • the data transmission method according to the present invention includes a step of supplying a plurality of data having a time-series arrangement of a first cycle, and a step of supplying two or more predetermined steps. A step of specifying one data of the group ⁇ for each data group consisting of the following constants and adding time information indicating a time position of the specified data, and a step longer than the first cycle.
  • the plurality of data supplied in one cycle of the second cycle are regarded as one packet, and the time is included in the data in the packet.
  • FIG. 2 is a schematic block diagram illustrating the overall configuration of an embodiment of the data transmission method according to the present invention.
  • the data generating unit 11 is provided with a predetermined service.
  • a plurality of data having a time-series arrangement of a periodic cycle is sequentially generated and output, for example, digital audio, which outputs sequential sampled data of symbols.
  • the data generating section 11 may include an audio reproducing device such as a CD (compact disk) layer, or a musical sound sampler may be provided in real time.
  • the sampling period T of the data output from the data generating unit 11 may be changed to 0 according to the data source. May be.
  • the data output from the data generator 11 is temporarily stored in the data buffer 12 in chronological order.
  • an asynchronous input / output buffer register is used for the data buffer 12.
  • the timer 13 creates time stamp data, that is, time information, and may include a running counter that counts a predetermined clock.
  • the network processing unit 14 transmits the data every predetermined transmission interrupt cycle. A process of combining a plurality of X data, which forms one packet based on the data temporarily stored in the buffer 12, into a single transmission buffer TBF, and a process of collecting a predetermined number M of data Processing to add one time data and add time stamp data indicating the time position of the specified data; and one of the plurality of X data aligned in the transmission buffer TBF and the data.
  • the transmission interrupt cycle corresponds to the service section SF of the packet, and is set longer than the data sampling cycle T, so that a plurality of X data can be included in one packet.
  • the number X of data in one packet is variable.
  • the network processing unit 24 receives the packet transmitted via the network 30 and multiplexes the data of multiple Xs contained in the received packet in chronological order. Data is temporarily stored in data buffer 22. As the data buffer 22, it is preferable to use an input / output asynchronous buffer register such as FIF0 having a plurality of ti stages.
  • the clock generation unit 23 performs original sampling of the data supplied from the data generation unit 11 on the transmission side 10 based on the time stamp data included in the received packet. It reproduces the period T. For example, the original sampling period T is presumably calculated by performing an operation as in the above equation 3, and a clock signal corresponding to the calculated period T is generated.
  • the data use unit 21 sequentially reproduces and reads the data temporarily stored in the data buffer 22 in accordance with the reproduced sampling period T given from the ku This will be used as appropriate.
  • the form in which the reproduced data is used may be appropriately determined. For example, the D-A conversion may be performed as it is, and then the sound may be produced from a speaker, or the sound may be produced from a speaker after performing an effect or the like. Any data may be sent, such as sending processed data to the outside.
  • the transmitting side 10 and the receiving side 20 execute a software program under the control of a micro-computer or the like, thereby controlling the processing in each of the above-mentioned sections.
  • An example of the processing flow for that is shown below.
  • FIG. 3 schematically shows an example of “transmission preparation processing” performed by the transmission side 10.
  • This “transmission preparation processing” is mainly processing performed by the network processing unit 14.
  • the processing of the data generation unit 11 and the input processing to the data buffer 12 are not included.
  • this “transmission preparation processing” is executed in the course of the main routine on the transmission side 10.
  • step S1 the storage contents of the data buffer 12 are scanned to check whether new data has been input to the data buffer 12. If new data is input to the data buffer 12, the result is Y E S, and the process proceeds to the next step S2. If N 0, return.
  • step S2 the content of the ordinal register 0RDR is divided by a predetermined number M, and it is checked whether the remainder is zero.
  • the ordinal register ORDR is for storing data indicating the ordinal number of the data detected to have been input to the data buffer 12 in the previous step S1.
  • the ordinal number is set to 0 by the setting process, and thereafter, every time new data is input to the data buffer 12, the increment is performed by the process of step S5 described later.
  • the predetermined number M is a constant indicating the number of data of one data groove to which one time stamp should be added, and is a power of 2 such as 4 or 8. This is preferable because the division can be simplified.
  • the current data new data just entered in the data buffer 12
  • step S2 if step S2 is YES, the process goes to step S3 and the current value of timer 13 (this is because one sample data from data generation unit 11 arrives at data buffer 12) Is stored in the transmission-side time stamp register TSt, and then goes to step S4.
  • step S2 one data to be added with the time stamp is specified by the processing of step S2, and the time stamp data to be added to the specific data is specified by the processing of step S3. That is, the time information is determined and generated, and is registered in the register TSt.
  • step S2 is N0, jump to step S4 and There will be no registration for the night.
  • step S4 the new data input to the data buffer 12 (ie, the current data corresponding to the contents of the ordinal register ORDR) is extracted from the buffer 12 and stored in a predetermined transmission buffer TBF. I do.
  • the “transmission NA processing” in FIG. 3 is performed again.
  • the “transmission preparation processing” in FIG. 3 is returned.
  • some data sequentially supplied are sequentially stored in the transmission buffer TBF.
  • Some (generally, a plurality of X) data stored in the transmission buffer TBF are transmitted as one packet by a “transmission interruption process” described below.
  • FIG. 4 schematically shows an example of the “transmission interruption process” performed by the transmission side 10 and is executed as an interruption process to the process of FIG.
  • This “transmission interruption processing” is executed at regular interruption intervals according to a predetermined transmission interruption cycle.
  • the transmission interrupt cycle corresponds to, for example, one service section SF of a packet, and is generally longer than the sampling cycle T of data to be transmitted.
  • step S6 the time stamp data registered in the transmission-side time stamp register TSt is transferred to the time stamp.
  • the information is set to be transmitted as "IMEST AM P", and the number of data X stored in the transmission buffer TBF is counted. This is set as the number of samples X "SAM PLEX”.
  • the value obtained by subtracting the number of samples X "SAM PLEX” from the contents of the ordinal register 0 RDR (0 RDR— "SAMPLE x”) is defined as the bucket sample ordinal "SAM PLEORDER".
  • the bucket head sample ordinal "SAMP LEORDER" indicates the sample ordinal of the first data in chronological order among a plurality of data included in one packet to be transmitted.
  • next step S8 empty data "V0id" is set in the transmitting-side time stamp register TSt, and then the process returns. If the next packet is accompanied by a valid time stamp, the contents of the register TSt are valid by passing through the processing of step S3 in FIG. Updated with the Mustam value. On the other hand, if the next bucket does not have a valid timestamp, it does not go through the processing of step S3 in FIG. The empty data "void” is retained without updating the contents, and the next "transmission interrupt processing" is reached. Such a stage is that the empty data "Void" is set to be transmitted as the time stamp information "TIMESTAMP" in step S6 in FIG. Become.
  • the step S2 becomes YES, and the program goes to the step S3.
  • the current value of timer 13 (in FIG. 1, initially “1” for the sake of convenience, but is not limited to this), is stored in the transmission-side time stam register TSt. I do.
  • the ordinal 0 data is stored in the transmission buffer TBF (S4), and the value of the ordinal register 0RDR is reduced to 1 (S5).
  • step S2 becomes N0 and step S3 is jumped.
  • Steps S 4 and S 5 are performed, and the data of the ordinal number 1 is stored in the transmission buffer TBF, and the value of the ordinal number register ORDR is multiplied to 2.
  • step S2 In the second service section SF2, two data of ordinal numbers 3 and 4 are supplied.
  • step S2 When the data of ordinal number 3 is supplied, step S2 is N0, the data of ordinal number 3 is stored in the transmission buffer TBF (S4), and the value of the ordinal register ORDR is set. Is reduced to 4 (S5).
  • step S2 becomes YES, and goes to step S3, and the current value of timer 13 ("17" in Fig. 1) is transmitted by the transmitting timer.
  • step S4 Store at TS t.
  • the data of the ordinal number 4 is stored in the transmission buffer TBF (S4), and the value of the ordinal number register ODRDR is reduced to 5 (S5).
  • step S2 is N0
  • the data of ordinal number 5 is stored in the transmission buffer TBF (S4)
  • the value of the ordinal number register 0 RDR is set. It is reduced to 6 (S5).
  • step S 2 is N 0, the data of ordinal 6 is stored in the transmission buffer TBF, and the value of the ordinal register ORDR is multiplied. Only 7.
  • the register TSt keeps the empty data "Void" in the register TSt without passing through the step S3.
  • empty data “void” is set as time stamp information “TIMESTAMP”, and “2” is transmitted as the number of samples x “SAMPLE x”.
  • Set to '5' (7-2 5) as the sample ordinal "SAMPLEORDER" of the bucket. Then, this information and the two data of the ordinal numbers 5 and 6 in the transmission buffer TBF are transmitted as one packet.
  • FIG. 5 schematically shows an example of the “reception process” performed on the reception side 20.
  • This “reception processing” mainly shows the processing that the network processing unit 24 and the clock generation unit 23 take charge of.
  • This “reception processing” is executed every time the receiving side 20 receives one packet information given from the network 30.
  • step SI1 of the information contained in one packet received via the network 30, the packet first sample ordinal "SAMPLEORDER '" is stored in the register j, and Store the number X "SAMPLEX" in register X. Also, set false value FA in update clock register update CLOCK. Set LSE. When the true value RU RUE is set in the update clock register update CLOCK, the update of the clock frequency is instructed, and the false value FALSE is set. Does not instruct the update of the clock frequency.
  • step S12 the variable register i is set to an initial value 0.
  • step S13 one of the ranks indicated by the variable register i out of the multiple X data included in one packet received via the network 30.
  • One night DATA (i) is transferred to data buffer 22.
  • step S14 the value obtained by adding the current value of the variable register i to the contents of the register j (that is, the ordinal number “S AM PLEORDER” of the packet head) and the predetermined number M Divide to see if the remainder is zero. That is, the data written to the data buffer 22 in the previous step S13 (the ordinal number is ⁇ j10i) is the specific data to which the time stub is added. Check whether it corresponds to. In the case where the data that has damaged the data buffer 22 in the previous step S13 corresponds to the specific data, the remainder is 0 because the ordinal number j + i of the data is divisible by the predetermined number M. That is, YES is determined in step S14. The car goes through steps S15 to S18 before going to step S19. The platform of NO jumps the route of steps S15 to S18 and goes to step S19.
  • step S15 it is checked whether or not the content of the receiving-side time stamp register Sr is empty data "Void".
  • the contents of the register TSr are initialized to empty data "Void” by an initial setting process (not shown).
  • step S16 After that, by performing the next step S16, The time stamp information “TIMES TAMP” included in one received packet is loaded into the register TS r. Therefore, this step S 16 includes the first time stamp information “TIMES TAMP”. AMP "is loaded into the register TSr. Thereafter, step S15 is determined to be NO, and processing is performed exclusively through the routes of steps S17 and S18. .
  • an original sampling period T is calculated Z estimation by performing an operation corresponding to the above equation 3. That is, from the time stub information “TIMESTAP” (corresponding to TS (i) in the above equation 3) included in the bucket received this time, Subtract the contents of the receiving-side timestamp register TSr (time stamp information included in the packet received last or two times before and corresponding to TS (i ⁇ ) in Equation 3), Divide by a constant M (for example, 4) indicating the number of data in the data group to which one time stamp is added. The quotient is registered as data for estimating the original sampling period T.
  • M for example, 4
  • the time stub information "TIME S TAM P" included in the packet received this time is loaded to the receiving side time stamp register TSr, and the corresponding register is loaded. Updates the contents of TSr and sets the true value TRUE in the update clock register update CLOCK.
  • step S19 the value of the variable register i is increased by one.
  • step S20 it is determined whether or not the value of the variable variable register i is equal to the number of data X in the packet stored in the register X. Find out what. If N 0, the process returns to step S 13, and the processes in steps S 13 to S 18 are repeated for the value of the variable register i.
  • step S20 When step S20 becomes YES, the process goes to step S21 and the above-mentioned step is performed on condition that the content of the update clock register update CLOCK is a true value TRUE.
  • the sampling clock frequency on the receiving side 20 is set in accordance with the period T.
  • Perform lock synchronization processing That is, the sampling clock frequency on the receiving side 20 is set or updated according to the calculation result ⁇ in step S17.
  • the process returns to end the "reception process". Since only one time stamp information is included in one packet, once the packet passes through the routes of steps S17 and S18, step S1 It is not necessary to repeat the processing of 3 to S 20. Therefore, after step S18, the flow may be changed so as to jump to step S21.
  • the procedure goes to step S21.
  • the sampling clock frequency on the receiving side 20 is not set because the content of the update clock register update CLOCK is still set to the false value FALSE. Therefore, the reproduction and reading of the data stored in the data buffer 22 has not been started yet.
  • the sampling clock frequency on the receiving side 20 is set in accordance with the cycle T described above.
  • the data stored in the data buffer 22 can be reproduced and read.
  • FIG. 1 (c) data is reproduced and read according to the cycle T from the beginning of the next service section SF4.
  • the present invention is not limited to this, and even in the middle of the service section SF3, the reproduction and reading of the data stored in the data buffer 22 is started as soon as the processing in step S21 is completed. You may do it.
  • the sampling clock frequency is not updated in step S21, and the data stored in the data buffer 22 is reproduced and read while maintaining the clock frequency according to the cycle T calculated previously.
  • timestamp information "TI ME STAP" that is included in the packet is an empty data "V oid”, update processing of support Prix Nguku lock frequency that has become so that it is not done D
  • step S18 "33" of "TIMESTAMP” is set in the register TSr, and the true value TRUE is set in updateCLOK. Therefore, in the subsequent step S21, the sampling clock frequency on the receiving side 20 is updated in accordance with the cycle T described above.
  • the numerical value of the time stamp coasting information is shown in a simplified manner, so the period T obtained as a result of the operation is a constant numerical value 4. According to the setting of the function, the operation result value T takes a more complicated value.
  • Synchronization control is performed so that the sampling clock frequency is constantly adjusted according to the calculation result value T. In this way, the control is performed so that the sampling clock frequency of the transmitter 10 and the receiver 20 is constantly synchronized by the time stamp information transmitted for each predetermined data group. Is done.
  • the predetermined constant ⁇ ⁇ ⁇ ⁇ in the above embodiment is a value that does not add a time stamp to two or more data in one packet generation cycle (that is, one service section SF), that is, It is desirable that the maximum value of the number of data supplied in one packet generation cycle (in the case of FIG. 1) is larger than “3”).
  • the sampling cycle on the receiving side ⁇ In order to increase the reproducibility of the image, it is desirable that it be the minimum value among such values. Further, it is preferable that ⁇ be a value of a power of 2, since the division operation can be simplified.
  • the simplest method is to use a sampling clock D from the transmitting side to the receiving side at the beginning of data transmission. It should be sufficient to provide information indicating the clock frequency and to set the clock division ratio so that the receiving clock oscillates the sampling clock frequency corresponding to the information.
  • the actual sampling clock frequency on the transmitting side and the receiving side may be slightly different due to the individual difference of the crystal oscillator used as the oscillation source. There is a problem that inconvenience occurs in processing. In other words, in the data reproduction / readout technology based on clock oscillation output, the oscillation output of the crystal oscillator used as the oscillation source is divided to create a sampling clock with a desired period.
  • the actual sampling clock frequency on the side may be slightly different. This subtle deviation is accumulated in continuous audio reproduction processing over a long period of time, and eventually causes a remarkable deviation in reproduction timing.
  • a buffer is provided on the receiving side to absorb the data transfer timing deviation, but as described above, the sampling clock between the transmission and reception is used. If there is a slight deviation in the The buffer on the side overflows (when the receiving side's clock frequency is relatively slow) or underflows (when the receiving side's clock frequency is relatively fast). May occur).
  • Such a platform is not preferable because normal data transmission and reception cannot be performed.
  • the sampling clock frequency of the transmitting side and the receiving side can be constantly synchronized. The control method is more preferable because such a problem does not occur.
  • the receiving clock 20 sets the sampling clock frequency for controlling the reproduction and reading of the data buffer 22 based on the cycle calculated in step S17.
  • a manner that the force;, aspects of reproduction read control based on the time information is not limited thereto, as appropriate may c for example, designed to, for the data Thailand beam scan data pump information is not added, respectively unique
  • the processing for adding the time information may be performed, and the reproduction and reading may be performed with reference to the time information unique to each data.
  • the receiving side 20 Prior to data transmission, data indicating the basic sampling period T is transmitted, and the receiving side 20 first reads and reads data at the sampling period T corresponding to the transmitted data. May be started. By doing so, the rise of the data reproduction / readout on the receiving side 20 can be advanced by one service period as compared with the above embodiment.
  • some dummy data may be transmitted together with the initial value of the time stamp before transmitting the original data.
  • the start of data reproduction and reading at the receiving side 20 on the spot should be started from actual data by cutting dummy data. For example, assuming that the data of ordinal numbers 0, 1, and 2 in FIG. 1 (C) is dummy data, the data on the ordinal number 3 (the actual data) Start reading from the beginning of the data). Even in such a case, the start of the reproduction and reading of the actual data on the receiving side 20 can be advanced by one service section as compared with the above embodiment.
  • steps S2 and S3 in FIG. 3 are generally omitted, and “TIMESTAMP-TS” in step S6 in FIG. ⁇ ⁇ ⁇ ⁇ STAMP-Timer 1 3 , And a predetermined variable X (the value of the register X) may be used in place of the predetermined constant M in steps S14 and S17 in FIG.
  • a data transmission method such as that shown in FIG. 1 (a) is implemented by a predetermined constant M of step S2 in FIG. 3 and steps S14 and S17 in FIG.
  • a fixed number N indicating the number of data per packet is used, and the number of data X in the transmission buffer TBF is N or more at the start of the “transmission interrupt processing” in FIG.
  • a step is provided for checking whether or not the processing is completed. If NO, the interrupt processing is terminated, and if YES, the interrupt processing is executed. Then, at the time of continuation, in step S6, a predetermined number N is set to be transmitted as "number of samples X" SAMPLE x "J, and in step S7, the transmission buffer is set.
  • the leading TBF data of the data in the TBF is formed as one packet, and the remaining data, if any, is left in the transmission buffer TBF.
  • FIG. 6 shows a hardware configuration of a device (for example, a personal computer) that can be used on either the transmitting side 10 or the receiving side 20.
  • a device for example, a personal computer
  • a CPU (central processing unit) 31 is used as a main control unit. Under the control of the CPU 31, a transmission processing program as shown in FIGS. And executes the reception processing program as shown in FIG.
  • the CPU 31 has ROM (read-only memory) 32, RAM (random access memory) 33, network 0 (input / output device) 3 4, timer 35, mouse 36, keyboard 37, display 38, hard disk 39, DAC (direct memory access controller) 40, the sound I / O (input / output device) 41, the sampling clock generation circuit 42, the external memory drive 43, etc., connect the data and address bus 44. Has been contacted through.
  • Sound 1 Z041 is a sound input / output device called CODEC, in which a digital / analog converter (DAC), an analog / digital converter (ADC) is installed. ), An input FIFO (first-in first-out buffer) connected to the ADC, and an output FIF 0 connected to the DAC.
  • An analog audio signal is input from the external audio signal input terminal 45 to the ADC in the sound I / O 1 and the predetermined frequency generated from the sampling clock generation circuit 42 is input. This is AD-converted according to the number of sampling clocks, and the AzD-converted audio signal is taken into the input FIFO.
  • When data is present in the input FIFO it operates to 0 to output a signal requesting a recording process to the DMAC 40.
  • the DMAC 40 fetches the audio data of the input FIFO in response to the recording processing request from sound 1/041, and sends the data to the internal memory, for example, RA 3 33 via path 44.
  • the external memory drive 43 is an external storage medium such as a floppy disk or CD—R0M (compact disk, read-only memory) or M0 (magneto-optical disk). Is detachably mounted to read data from the external recording medium 46.
  • the external recording medium 46 may be used to store control programs such as those shown in FIGS. 3 to 5 and other programs, and may be used to store audio data and the like. Is also good. For example, set the external recording medium 46 that stores the audio data you want to send to the drive 43, read this audio data, and read the internal memory via the bus 44. For example, it is stored in RA ⁇ 33.
  • the CPU 31 executes a transmitting program as shown in FIGS. 3 and 4 and stores the program in the RAM 33.
  • the obtained smart data is transmitted to the network 30 (FIG. 2) via the network I / O 334.
  • CPU 3 1 executes the program for reception as shown in FIG. 5, via the Z03 4 to nets work It takes in data transmitted through the network 30 (FIG. 2) and stores it in internal memory, for example, RAM 33. Also, the clock frequency generated from the sampling clock generator 42 is variably set according to the received sampling clock frequency.
  • the received audio data stored in the RAM 33 may be stored in the hard disk 39 or the external storage medium 46, or may be read out under the control of the DMAC 40 to provide a sound system. You may make it sound via 4 7. In this case, the DMAC 40 converts the audio data stored in the RAM 33 into one sample at a time in synchronization with the playback sampling clock from sound 1/041.
  • the program for performing the transmission processing or the reception processing according to the present invention as shown in FIGS. 3 to 5 stores the S memory in any of the ROM 32, the RAM 33, or the hard disk 39. Or may be stored in the external storage medium 46.
  • the transmission processing or the reception processing according to the present invention described above is connected to a communication network via the network I, '034, and is transmitted from an external server contributor (not shown). It is also possible to receive the program for performing the following, transfer it to the RAM 33 or the hard disk 39 or the external recording medium 46 inside the computer shown in FIG. 6, and store it. Good.
  • a plurality of data such as digital audio data having a time-sequential array with a fixed period are transmitted via a network.
  • the asynchronous packet can be used to enjoy its advantages, and the time information to be transmitted in the packet is expressed in the smallest possible amount of data and transmitted per packet. This has an excellent effect that the amount of if data can be reduced.
  • FIG. 7 is a block diagram showing an example of the configuration of the data transfer system of the present invention.
  • 110 is the network capable of performing the isochronous NAS transfer shown in FIG. 25.
  • 1 1 to 1 1 3 are examples of each node connected to this network 110, and 1 1 2 is reproduced on the time axis
  • It is a transmitting station that transmits time-series data that needs to be transmitted, for example, a sound source device that transmits a tone waveform signal.
  • Reference numeral 113 denotes a receiving station that receives the time-series data, for example, a mixer that mixes the tone waveform signals.
  • Time series data such as musical sound waveform data sampled by a predetermined sampling timing is transmitted from the transmitting station 112 with a time stamp added thereto, and the receiving station 113 transmits the data. Upon reception, the musical tone waveform data is reproduced at the timing specified by the evening stamp.
  • a plurality of other nodes are also connected to this network 110, and the other station 11 is the cycle master (cycle start packet transmitting station) described above. .
  • FIG. 8 shows that each of the nodes 11! 1 is a block diagram showing an example of the internal configuration of 1 ⁇ 3, where 121 is a central processing unit (CPU), 122 is a ROM that stores operating programs and various data, and 1 is a ROM.
  • Reference numeral 23 denotes RAM used as a working area, etc.
  • reference numeral 124 denotes the above-mentioned cycle timer register, which generates various timing signals
  • reference numeral 126 denotes network 1
  • a network interface circuit for connecting to 10 and 127 is an internal bus.
  • Reference numeral 125 denotes a data use generation circuit. When the node is the transmission station 112, the data generation circuit is used. When the node is the reception station 113, the data use generation circuit is used.
  • Figure 9 A and Figure 9 B is a functional Proc-diagram for explaining the de-one data transfer operation before himself transmission station 1 1 2 and the receiving station 1 1 3 c
  • FIG. 9A is a block diagram showing the function of the transmitting station 112.
  • reference numeral 131 denotes a data generation circuit, which is composed of a plurality of musical tone sam- bles sampled at a predetermined sampling cycle for each of the reference cycles of 125 sec, and added to the data.
  • the transmission packet of the isochronous channel is generated by the time stamp.
  • 132 is a data buffer for storing the packet generated by the data generation circuit 131, and 133 is a baggage stored in the data buffer 1332.
  • FIF 0 First In First Order Out
  • FIG. 9B is a functional block diagram of the receiving station, and reference numeral 135 denotes a receiving bar for receiving and storing packets to be received by the receiving station among the packets transmitted on the network.
  • Buffer 136 is a standby buffer having a FIFO configuration in which a packet stored in the reception buffer 135 is written in accordance with the cycle start signal, and 1337 is a standby buffer.
  • This is a data utilization circuit that reproduces the data transmitted by the bucket at the timing specified by the time stamp.
  • the transmitting side generates a data packet corresponding to the first timing, and transmits this on the network by the cycle start signal (second timing).
  • the receiving side receives the ',' packet transmitted according to the second timing, and reproduces the data according to the first timing.
  • FIGS. 10A and 10B are diagrams for explaining transmission packets generated in the data generation circuit 131.
  • the first sampling data 1 is data sampled at a time delayed from the first timing signal by the time t, and the other sampling data 2 to 5 are each time ts from the time t.
  • the data is sampled at the time of the evening delayed by a time corresponding to the corresponding multiple of.
  • the time position within 25 ⁇ sec) can be expressed using the clock cycle as a unit. it can. That is, the time position in the one reference cycle can be represented by 0 to 3071 clocks in the unit of the clock cycle.
  • the time position t in the reference cycle of the first sampling data 1 in the reference cycle is used as the time stamp.
  • the value expressed in units of ⁇ -cycles is used as the time stamp value, and the other sampling data 2 to 5 are sampled from the first sampling data 1 described above.
  • the reproduction time is determined by sequentially adding the periods ts.
  • the configuration of a packet for transmitting such data is shown in FIG. As shown in this figure, a transmission packet is first formed by a time stamp representing the previous self-time t, and by combining the first to fifth sampling values. I have.
  • the time stamp represents the time t in the reference cycle by the number of system clocks, and takes a value from 0 to 3071. Therefore, it becomes 12-bit data.
  • FIG. 10C For comparison, the configuration of the conventional time stub is shown in FIG. 10C.
  • a force time stamp composed of a time stamp and each of the sampling data 1 to 5 is also provided on this platform.
  • it is, for example, 32 bits of data. That is, the lower twelve bits indicate the time t in the same manner as in the case of the present invention, the next thirteen bits indicate the number of the reference cycle, and the most significant bit. Indicates the time represented by ⁇ with 7 hits.
  • a time stamp representing all of the absolute time shared by each node is used, so that the packet according to the present invention shown in FIG. Also had a 20-bit longer time stamp.
  • a force for transmitting transmission data generated according to the first timing to the network according to the second timing since the second timing may be generated with a delay relative to the first timing, one base determined by the first timing may be used. In some quasi-cycles, a situation occurs in which two transmitted data are included. Even on such a platform, according to the data transfer system of the present invention, the original data can be reproduced at a predetermined time position without any problem.
  • the operation of the data transfer system of the present invention will be described with reference to the timing chart of FIG. In this figure, the horizontal axis is the time axis, and the data obtained by sampling the original data in the reference cycle from time t1 to t2 is obtained by the data generation circuit 1331.
  • the bucket 51 to which the above-mentioned 12-bit time stamp is added is stored in the data buffer 1332.
  • the packet 51 stored in the data buffer 13 2 is supplied to the cycle buffer output generated at the time t 2 by the FIF 0 type standby buffer 13 3 Is stored in
  • a packet 52 corresponding to the original data during the period from time t2 to t3 is similarly generated and stored in the data buffer 1332.
  • the bucket 52 is stored in the standby buffer 1333 by the above-mentioned timer output.
  • the cycle start packet is not transmitted at the time 1
  • the packet 51 and the packet 5 are transmitted to the standby buffer 133. 2 is stored.
  • the cycle start signal is output.
  • the packet 51 is output and the packet 51 is transferred from the standby buffer 133 to the transmission buffer 134 in response to this.
  • the packets stored in this transmission buffer 13 4 correspond to this isochronous channel in this transmission cycle. It will be sent on 0.
  • this transmission cycle is started later than the reference cycle, and the packet 51 is transmitted on the network. Is later than the time of the next standard timing, IIt4. At this time, this packet is stored in the reception buffer 135 after the time t4. Then, the next transmission cycle is started at a timing delayed by the time td from the time t4, and when the cycle start packet 101 is transmitted, the transmission cycle starts. Thus, the bucket 52 is transferred from the self-standby buffer 133 to the transmission buffer 1334, and is sent out on the network during this transmission cycle. . Thus, two packets are transmitted and received within one reference cycle between times t4 and t5.
  • the process is shifted to the standby buffer 1336, and is transferred from the standby buffer 1336 to the data buffer 1337 by a cycle timer output indicating the reference timing. That is, after the time t4, the packet 51 is stored in the reception buffer 135, and the packet 51 is transmitted by the cycle start signal indicating the start of the next transmission cycle. Stored in wait buffer 1 36. The packet 52 transmitted in the transmission cycle started by the cycle start signal is stored in the reception buffer 135. At time t5, due to the output of the cycle timer, the packet 51 stored in the standby buffer 1336 is damaged by the data buffer 1337.
  • the data is reproduced on the time axis in the data utilization circuit 13. Further, the packet 52 stored in the reception buffer 135 is changed to the standby buffer according to the cycle start symbol indicating the start of the next transmission cycle. Is transferred to the buffer 13 and written to the previous data buffer 13 7 at time t 6, and is reproduced with accurate timing during the period from time t 6 to t 7. .
  • FIGS. 12A to 12C and FIGS. 13A to 13C are flow charts I of processing on the transmitting side and the receiving side for realizing such a function.
  • Figure 1 2 A ⁇ Figure 1 2 C shows the processing at the transmission side
  • FIG. 1 3 A to FIG 1 3 C shows the processing at the receiving side.
  • FIG. 12A shows the data generation processing. This processing realizes the same function as the data generation circuit described above.
  • the original data to be transmitted is input, and a data packet to which a time stamp corresponding to the leading value is added is provided. This is the process that generates a '.'
  • FIG. 12B shows a cycle timer interrupt process executed when a cycle timer interrupt indicating the first timing occurs, and waits for data in the data buffer. It is added to the software and erased from the data buffer.
  • Fig. 12C shows the cycle generated when the cycle start packet is received. This indicates a cycle start interrupt process started by a restart interrupt. In this process, the process of extracting the oldest data in the standby buffer to the transmission buffer is performed.
  • FIG. 13A shows the data reception interrupt processing that occurs when a packet on the network is received.
  • the received data is data necessary for the own station.
  • the packet is recorded in the reception buffer.
  • FIG. 13B shows a process started by a cycle start interrupt generated when the cycle start packet is received, and the packet recorded in the reception buffer is sent to the standby buffer. This is the process of adding the packet and deleting the packet from the reception buffer.
  • Figure 1 3 C is the Size Lee click Rutai showing processing by Ri is started during an interrupt, the process of moving the oldest stator in standby server Tsu files in the data pack off key c
  • the present invention is not limited to this, and supports the same isochronous transfer. The same can be applied to a running network system.
  • the number of bits of the time stamp can be arbitrarily determined according to required time accuracy and the like.
  • the data to be transferred is not limited to musical tones, and may be any data that flows in time, such as image (moving image) data and waveform data other than musical tones.
  • image (moving image) data and waveform data other than musical tones According to the second embodiment, the number of bits of the time stamp can be reduced, and the transmission efficiency can be improved.
  • FIG. 14 is a diagram for explaining a transmission packet in the third embodiment, which is also the same as the transmission packet example shown in FIGS. 10A and 10B.
  • FIG. 15 shows a configuration example of a network to which the data IE transmission method according to the third embodiment is applied.
  • the network includes a segment 1 including nodes N11 to N13 and a segment including nodes N21 to N23. 2 and a segment 3 including nodes N 3 1 to N 3 3 and a force, and a bridge B 1 is provided between the bus of segment 1 and the node 2.
  • a router R 1 is arranged between the segment 2 bus and the segment 3 bus.
  • Bridge B1 has a physical layer and a data link layer, and interconnects the segment I bus and the segment 2 bus. Further, the router R1 can interconnect the transmission paths of different protocols, and interconnects the path of the segment 2 and the bus of the segment 3.
  • the bridge B 1 and the router R 1 may have almost the same configuration as that of the node shown in FIG. 8, but do not include the data use data generation circuit 125.
  • a cycle start packet is basically transmitted at the cycle time interval (125 seconds), and at that time, the transfer of other packets is performed.
  • the transmission of the cycle start packet is waited until the transfer is completed, as described above.
  • the data transmission method according to the present invention between segments in such an isochronous transfer and an asynchronous packet transfer is executed by the bridge B1 and the router R1.
  • the transfer of the asynchronous packet is performed until the end of the packet, as described above. It happens that the data is transferred beyond one period.
  • the data transfer method of the present invention even in such a platform, the data can be transferred without losing the relative time relationship between the data, and the original data can be transferred at a predetermined time position. C can be reproduced
  • the horizontal axis is the time axis.
  • ti-1 Frame) S i -2 obtained by sampling the original data is a bucket A1 to which the above-mentioned 12-bit time stamp is added, and is stored in the data buffer. Is done. Bucket A1 stored in this data buffer is stored in the standby buffer by the cycle timer output generated at time ti-1.
  • the packet B1 stored in the standby buffer is transmitted to the transmission buffer.
  • the packet CI stored in the transmission buffer is transferred to a network such as that shown in Fig. 15 using the timing assigned to the channel to which the packet CI is to be transmitted. Sent out.
  • the data S i-1 obtained by sampling the raw data in one cycle (one frame) of the cycle timer from time ti_l force to time tiger Ijti is described above.
  • a packet A2 to which a 2-bit time stamp is added is stored in the data buffer.
  • the packet A2 stored in the data buffer is stored in the standby buffer by the cycle timer output generated at time t i.
  • the packet B2 stored in the standby buffer is transmitted.
  • the packet is transmitted as a packet D2 to a network as shown in FIG.
  • the packet transmission time is considerably delayed from the time ti due to the transfer of the asynchronous packet, so that the frame between the time Ijti + 1 and the time ti + 2 has the same timing.
  • the packet D1 and the packet D2 of the channel are present.
  • the time stubs added to the packets D1 and D2 are relative values, if the receiving side simply performs the reproduction process, the data in the packet D1 will be lost. Data and the data in packet D2 may be mixed.
  • the processing as shown in FIG. 16 ( ⁇ ) or FIG. (I) is performed so as not to cause such occurrence. Note that these processes The processing is performed at the bridge B1 and the router R1 in FIG.
  • the delay time dela bar ⁇ > of the received packet # 1 from the first cycle of the packet is measured.
  • the delay time delay (n + l) of the received packet E2 from the cycle start packet is measured.
  • a process of adding a transfer time stamp to the received packet E 1 and a playback time stamp of the time stamp added to the packet E 1 are performed.
  • the process of replacing with a pump is performed. In these processes, first, it is determined which cycle timer the packet E1 belongs to, but this determination is made based on the frame in which the cycle start bucket of the bucket E1 exists.
  • the frame to which the bucket E 1 belongs is set to the half lj.
  • packet E 1 is transmitted at time ti It is determined to be a frame that starts with. By performing the same processing, it is determined that the packet E 2 belongs to the frame starting from the time t i +1.
  • a time stamp generated by adding the period time of one frame and the delay time del ay (r) to the time ti is added to the packet E 1 as a transfer time stamp.
  • the time of the transfer time stamp is reached, that is, when the delay time delay (n) elapses from the time ti + 1, the data is transferred to the standby buffer as shown in FIG. C stored as packet F 1
  • the time stub generated by adding the period time of one frame and the delay time delay (n + 1) to the time ti + 1 is transferred to the time stamp ti.
  • the packet is added to the packet E 2 as a message.
  • the time of the transfer time stam has been reached, that is, when the delay time delay (n + l) has elapsed from the time ti + 1
  • the packet is transferred to the standby buffer as shown in FIG. Added as F2.
  • the packet F1 stored in the standby buffer is transmitted when the cycle start packet transmitted to another segment is detected in the frame starting from time ti + 3.
  • the packet F1 is sent to another segment as a packet G1 as shown in Fig. 16 (i) at the timing assigned to the channel to which the packet F1 is to be sent. Is done.
  • the packet F2 stored in the standby buffer starts at time ti + 4.
  • a cycle start packet sent to another segment is detected in the frame to be started, it is stored in the transmission buffer when the cycle start packet is detected, and the timing assigned to the above channel is shown in Fig. 16 (i ), It is sent to another segment as bucket G2.
  • the reason why the transfer time stamp is generated by adding the delay time de la n) or the delay time de n ay (n + l>) of the cycle start packet of the reception packet is as follows. This is because if the delay time del ay is not used in the platform that sends the protocol's high-socket packet, the platform may not fit in one frame.
  • the time stamp added to the received packet E 1 is a new time stamp obtained by adding the cycle time of one frame and the added time stamp of the relative value to the time ti. Replaced with the newly generated playback time stub.
  • the time of the playback time stamp is reached, that is, when the time stamp time of the relative value elapses from the time ti +]
  • the data of the bucket E1 is deleted. It is sent to the utilization circuit 125, and is reproduced on the time axis in the frame starting from time ti + 2 as shown in Fig. 16 (g).
  • the time stamp added to the received packet E2 is obtained by adding the one-frame cycle time to the time ti + 1 and the added relative time stamp. And replaced with the newly generated playback time stamp.
  • the time of the reproduction time stam has been reached, that is, when the relative time stamp time has elapsed from the time ti + 2
  • the data of the packet E 2 is changed. It is sent to the utilization circuit 125, and is reproduced on the time axis in the frame starting from time ti + 3 as shown in Fig. 16 (£).
  • FIGS. 12A to 12C A flowchart similar to that shown in FIGS. 12A to 12C may be used as a process flowchart on the transmitting side for realizing the function according to the third embodiment.
  • FIGS. 17, 18, and 19 described below are flow charts that realize the functions of the bridge # 1 and the router R1 in FIG.
  • FIG 17 is a flowchart of the cycle start interrupt processing on the receiving side.
  • the cycle start interrupt process is started by a cycle start interrupt generated when a cycle start packet is received, and the cycle start counter that measures the time in the frame at step S40. Reset to initial value.
  • the upper 20 bits of the 32-bit time information TIME in the I / O register are extracted, which is a cycle that advances according to the time of the network.
  • the extracted time information is stored in the register ssp—base_time.
  • the upper 20 bits are extracted by taking the logical product of the time information 1ME and the hexadecimal data OxFFFFFOOO.
  • the upper 20 bits of the time information TIME are information that can identify the timing at which the frame starts, and the remaining 12 bits of information are the time in the frame. Is information for identifying
  • Fig. 18 is a flow chart of the data reception interrupt processing on the receiving side.
  • the data reception ft interruption processing is the data reception interrupt generated when a ',' packet is received.
  • the time stub added to the isochronous packet received at step S50 is extracted and stored in the register Time Stamp.
  • step S51 the count value of the cycle start counter at that time is stored in the register del as the delay time of the received packet.
  • the time information stored in the register ssp—bas time contains the hexadecimal data 0x1000 and the delay time ⁇ 3 ⁇ 4 stored in the register delay. Is added, and the added time information is stored in the register TS].
  • step S53 it is determined whether the time stamp value stored in the register Time Stamp is greater than the time information TIME, and if YES, the timer is determined. Time has not yet reached the time stamp, and the time information stored in the register ssp—base_time, the hexadecimal data 0 ⁇ 1000, and the time stamp stored in the register Time Stamp at step S55 The reproduced time stamp value is added to the stored time stamp value, and the added value is stored in the register TS2.
  • step S53 the time stamp time has already passed, and the time stamp stored in the register Time Stamp in step S54.
  • the pump value is stored in the register TS2 as the playback stub value.
  • the packet received in step S56 is stored in the register TS1. After adding the time information as a transfer timestamp, move to the transfer buffer. Further, the time stamp added to the data received in step S57 is replaced with the reproduction time stamp stored in the register TS2, and then read. Move to the overflow buffer.
  • Fig. 19 is a flowchart of the timer interrupt processing on the receiving side.
  • the timer interrupt processing is a clock of 24.576 MHz, which is the reference clock of the system. It is started by a timer interrupt generated for each signal (cycle 40.7 nsec).
  • the time information in the cycle timer register and the time for reading are stored in the timer register.
  • the replaced time stamp added to the bucket stored in the buffer, that is, the time of the playback time stamp stored in the register TS2 is compared and determined. In this case, if the time of the two matches or the time of the time information TIME is determined to be after the time of the playback time stamp, the time has come to the time to be played back.
  • the data of the packet in the buffer for reading is output to the utilization circuit, and the data of the packet is reproduced on the time axis in the utilization circuit.
  • step S62 the baggage in the buffer for reading is erased.
  • step S63 the time information in the cycle timer register, the time of the TIME, and the time information of the packet newly stored in the packet stored in the tilling buffer.
  • the transfer time stamp stored in the data TS1 is compared with the time of the transfer time stamp. In this case, when the time of both terminals is determined to match or the time information of the time information TIME is determined to exceed the time of the transfer time stamp, the time has already reached the time to transfer.
  • step S66 the packet data in the transfer buffer is erased.
  • the data of the bucket added to the waiting buffer is used when the cycle start bucket in a given frame of another segment is detected. Sent to the segment.
  • step S64 If it is determined in step S64 that the packet in the transfer buffer is not a packet to be transferred to another segment method, the transfer process in step S65 is performed. Instead, in step S66, the data of the packet in the transfer buffer is deleted.
  • the number of bits of the time stamp can be arbitrarily determined according to the required time accuracy and the like.
  • the delay time of the received data from the cycle start packet is reduced by the cycle start packet. Since the time added to the start time of the cycle to be added to 1
  • a new time stamp is generated by adding the start time of the cycle to which the cycle start packet preceding the received data belongs to the reproduction time stamp and the one cycle time of the cycle.
  • the playback timestamp is replaced with this timestamp, even if the bit length of the playback timestamp does not have to be as long as 32 bits, data Data can be efficiently reproduced without losing the relative time relationship.
  • FIG. 20 shows a configuration example of an embodiment of a network system to which the network data synchronization method of the present invention according to the fourth embodiment is applied.
  • ⁇ 41 is a node 1 and, like node 1 in FIG. I have.
  • N42 is Node 2 and N43 is Node 3.
  • N44 is a node 4, which is a synchronizing device (timer) for synchronizing data on the network. The details of this timer liner will be described later.
  • N4 5 is node 5, which is, for example, a mixer, like node 4 (N4) in FIG.
  • the node 1 transmits musical tone data to the corresponding channel for each timing time (frame).
  • each data is transmitted with a data mark indicating the transmission timing added thereto.
  • this data mark a frame number or a time stamp data for specifying the frame is used.
  • data for example, musical sound data transmitted from the node 1 (N41) at the same timing passes through different paths and passes through the respective nodes.
  • a predetermined process is performed in the node, and it reaches the timeliner of the node 4 (N44).
  • the data (A 14) directly input from the node 1 (N 41) and the 2, the signal is input from node 1 (N 4) to node 2 (42), and is subjected to predetermined processing (for example, reverb processing) at node 2 (N 4 2), and then input.
  • the data (A124) is input to the node 2 (N42), and the node 2 (N42) is input to the node 2 (N42).
  • a reverb process is performed in the node 3
  • a predetermined process for example, a panning process
  • the data (A1 2 3 4), and fourthly, the data is input from node 1 (N 4 1) to node 3 (4 3), and at node 3 (N 4 3)
  • Data force (A 1 3 4), de Isseki is input four kinds of.
  • FIG. 21 is a diagram showing timing when data output simultaneously from the node 1 (N 4 1) reaches the node 4 (N 4 4) via respective paths. .
  • the earliest data that arrives is the first data (A14) described above.
  • the second data (A 124) is the same as that of A 14
  • the fourth data (A1 3 4) arrives later than the data by a time a2, and the fourth data (A1 3 4) arrives later by the time a3, and the third data (A1 2 3 4) Arrival will be delayed by time a 20 a 3.
  • the node 4 (N44) timer aligner synchronizes the data arriving with such different delay times and aligns the timing of the data arriving from each path. And sends it to node 5 (N45), which is a mixer.
  • node 5 which is a mixer.
  • a buffer for storing received data is provided for each channel to be synchronized, and the same data mark is attached to all the target channels.
  • the received reception data When the received reception data is received, it operates to sequentially output the data of each channel marked with the same data mark.
  • the timing of data arriving with different delay times even though they are output at the same timing from node 1 (N41) is aligned, for example, by using a mixer and a mixer.
  • FIG. 22 is a flowchart for explaining the operation of the node 1 (N41) for transmitting data.
  • the same data mark is added to the transmission data to be transmitted to the same frame to generate a data packet (Ste S71) sends the data to the corresponding channel (step S72). That is, the data baggage directly transmitted to the node 4 (N44) is, for example, channel 1, the data baggage to be transmitted to the node 2 (N42) is channel 2, the node 3 (N4). Drissake Tsu you want to send to 3) using, for example, Ji ya tunnel 3, the - c to send packets added with data marks
  • FIG. 23 is a flowchart showing the operation of a general receiving node, for example, the nodes 2, 3, and 5 (N42, N43, N45).
  • each receiving node receives the data of each channel (step S81), and It is determined whether or not the received data is data to be processed by the own device (step S82). This is set in the channel that received the data and this node in advance. This can be done by comparing with the channel of the data to be processed.
  • step S83 If it is determined in step S82 that the received data is not the processing data of the own device, no processing is performed and the processing for the data of the channel is performed. The process is terminated (step S84).
  • FIG. 24 is a flowchart for explaining the operation of the timer liner (node 4) (N44).
  • C This timer liner is provided in advance by a user or the like.
  • a channel to synchronize the mining (synchronization channel) is set.
  • data is received (step S31), and whether or not the received data is a channel corresponding to a preset synchronization channel is determined. Is determined (step S32). If the result of this determination is that the currently received channel does not correspond to the synchronous channel, no processing is performed (step S35).
  • step S33 Check the data mark included in the data packet, and check the data bucket with the same data mark added to all the buffers of the other synchronization channels of the currently received channel. Determine whether it is stored. If the result of this determination is YES, that is, if the currently received channel is the last of the data with the same data mark, the process proceeds to step S34.
  • the data with the data mark stored in the buffer of the synchronous channel is output in ascending order of the channel number.
  • step S33 the result of the determination in step S33 is N0, and The received data is stored in the buffer (step S36). Note that, depending on the delay time, a packet of a channel transmitted to the next frame may arrive before all packets of a certain frame have arrived. Since it is possible, the buffer is configured to be able to store a bucket in a frame unit for each channel.
  • the timings of the packets arriving at different timings can be aligned in the time aligner.
  • the node 4 has been described as having only the function of the timer liner.
  • the present invention is not limited to this. It is also possible to make the host have the same function as a timer.
  • the function of the timeliner may be included in the node 5 (N45). However, it is desirable that the timeliner be located immediately before the output node.
  • the data packet includes data specifying a node that is the destination of the data, and each node determines the data to receive the data. good even if the sea urchin'll determine whether or not it is should do data ⁇
  • the description is made with reference to the example of the network connected to the Internet, which is composed of other interfaces.
  • the present invention can be applied to a talk.
  • data transmission and z or data reception processing which is described to be performed using software, is performed in a storage medium such as a storage medium that stores a software program therefor.
  • Software products are also included in the scope of the present invention.

Description

明 細 害 デ一タ伝送方法及びシス テム 技術分野
こ の発明は、 デ イ ジタルオーディォデー タのような、 所定周期の時系列的な配 列を持つ複数のデータを、 ネ ッ ト ワー クを介して ί云送するデータ伝送方法及びシ ステムに関し、 特に、 受信側においてその正確な時間関係を再現しうるよ όな形 て、 送信側においてデータ形式を構成し、 伝送するようにしたデータ伝送方法及 びシ ス テ ムに関する。
また、 この発明は、 ネ ッ ト ワ ー クを経由してタ イ ム ス タ ンブが付加されたデー タを転送するデータ送受信装置およびデータ転送シス テムに関する。
さ らに、 こ の発明は、 ネ ッ ト ワ ーク上のセグメ ン ト から受信されたタ イ ムス タ ンプが付加されたデータを受信して、 ネ ッ トワー ク上の異なるセ グメ ン ト に送信 するよ う にしたデータ転送方式に関する。
さらに、 この発明は、 ネッ ト ワ ーク デー タの同期方法および装置に関する。 背景技術
ネ ッ ト ワー クを介したデータの伝送方式には、 大別すると、 同期方式と非同期 方式とがある。 同期方式では送 ί言側と受信側とが同期して動作するので、 受信側 における情報の時間的位置の正確な再現が要求されるオーディオデータの伝送に 適している。 しかし、 同期信号線を別途設けるなどの、 送受信間での同期をとら せるための構成が必要となり、 かつ、 同期をとらせることにより通信帯域を静的 に確保することになるため、 通信方式と しての汎用性に欠けるという欠点があつ た。 すなわち、 同期通信が必要ない場合であっても不要な帯域を確保したままに なり、 他の情報を伝送することができないという問題点がある。
これに対して、 非同期方式では、 通信帯域を動的に確保することにより、 上記 のような欠点を回避することができるが、 通信のオー バー へッ ドを减らすために は、 或る程度の情報をま とめた上で非同期パケッ トを発行するようにしないと、 データ通信効率が低下してしま う。 しかし、 或る程度の情報をま とめたパケッ ト の送信では、 データ本来の時間的な位 Eの情報が欠落してしま う ことになる。 そ こで、 パケ ッ トによるデータ伝送方式においては、 データ と共に該データの時間 的位置を示す時間情報も一緒に伝送するこ とが考えられている。 すなわち、 個々 のデ一タ每にその時間的位置を示す 「タ イ ムスタ ンプ」 といわれる時間情報を付 加し、 これらを 1 パケ ッ トに含めて伝送するものである。
しかし、 個々のデータ毎にその時間的位置を示す時間情報を付加して 1 パケ ッ 卜を構成したのでは、 データ量が增大して しま όので、 得策とはいえない。
と ころで、 ネ ッ ト ワークを経由してデータを伝送する方式と して、 送信側と受 信側とが連铳して同一周期の信号を伝送する同期通信方式、 及び間欠的な時間間 隔である定められた情報の単位を伝送する非同期通信方式がある ことは上 ϊ己の通 りである力;、 更に、 これらの中間に位置づけられるアイ ツ クロナス ( 1 soc h ronou s ) 転送方式がある。 このアイ ツク ロナス転送方式によれば、 あらかじめ帯域を 確保して時間的な遅延が保証されたリ アルタイ 厶性の高いデ一タ転送を行なう こ とが可能となる。
図 2 5 を参照してこのアイ ソ ク ロナス転送方式について説明する。 この図に示 したのは I E E E 1 3 9 4高速シ リ アルバス とよばれる システ ムにおけるバス上 のパケ ッ 卜の配置例を示したもので、 サイ クルスター トバケツ ト 1 0 1 、 ァイ ソ クロナスパケ ッ ト 1 0 2 および非同期 (a s ync hronou s ) ハ'ケッ ト 1 0 3 の 3種類 のパケ ッ トがネ ッ トワーク上に配置されている。 また、 破線はこ のシ ステ ムにお いて基準とされる第 1 のタイ ミ ング信号 ( cyc l e syn ch) を示しており、 この第 1 のタ イ ミ ング信号は 1 2 5 s e c周期 ( 8 K H z ) の信号とされている。 前記サ イ ク ルス ター トパケ ッ ト 1 0 1 は、 このバス に接続されている複数のノ ー ドのう ちサイ ク ルマス ターと呼ばれるノ ー ドから送出されるバケツ 卜であり、 このサイ クルスター トパケ ッ ト 1 0 1 によ り新たな伝送サィ ク ルが開始される。 前圮サィ クルマスタ一は精密なク ロ ッ ク源を有しており、 このク ロ ッ ク源からの 前記第 1 のタイ ミ ング信号の時間間隔で前記サイ クルスター ト パケッ ト 1 0 1 を 送信しょ うとする力;、 そのと きに、 他のパケ ッ 卜 の転送が進行中であると きには その転送が終了するまで前記サイ クルスター トパケッ ト 1 0 1 の送信は待たされ るよ うになされている。 1 0 4 はこの遅延時間 (s ta r t de l ay ) を示すものであ り、 この遅延時間は前記サイ クルスター トパケ ッ ト 1 0 1 の中に苻号化されて各 ノ一ドに送出される。 なお、 前記ノ一ドから送信されたパケ ッ トは同一のク ロ ッ ク期間内に他のノ一ドに受信されるこ とは保証されている。
各ノー ドはそれぞれ 3 2 ビッ トのサィ ク ルタイ マ一 レジスタを備えている。 各 サイ ク ルタ イ マー レジス タは、 その下位の 1 2 ビ ッ トを用いてシステムの基準ク ロ ッ クである 2 4 . 5 7 6 M H zのク ロ ッ ク信号 (周期 4 0 . 7 n s e c ) を 3 0 7 2 を法と して計数し、 その上位の 1 3 ビッ ト によ り前記 8 K H zの基準サィ ク ルの計数を行い、 最上位の 7 ビ ッ ト によ り秒を計数するよ 0になされている。 そして、 前き己サィ ク ルマ ス タ 一は、 前記サイ ク ル スター ト パケ ッ ト 1 0 1 を用い て自己のサ イ ク ル タ イ マ一 レ ジス タの内容をすベての /一ドのサ イ ク ルタ イ マー レ 'ンスタにコ ピーさせ、 すべてのノー ドを一定の位相差以内に同期させる。 この よう にして、 このネ ッ ト ワークにおいては共通の時間基準が保証されている。 アイ ツ ク ロナスパケ ッ ト 1 0 2 は、 デジタルサウ ン ド、 ビデオあるいは演奏デ 一夕などの精密なタイ ミ ン グ参照を必要とするデータを転送させるために用いら れるチ ャ ンネ ルであり 、 これらァ イ ソ ク ロ ナ スパケ ッ ト 1 0 2 は、 各 {云送サイ ク ル内において必ず伝送されることが保 |£されている。 例えは、 これらァイ ソク ロ ナスパケ ッ ト 1 0 2 は、 各伝送サィ ク ル內において最大 1 0 0 " sの長さで最大 6 3 チ ャ ンネル伝送されるこ とが保証されている。
また、 前記非同期パケ ッ ト 1 0 3 は前記アイ ソ ク ロ ナ ス パケ ッ ト 1 0 2 の伝送 が終了した後に当該伝送サイ クルに空き時間があると きに非同期に伝送されるパ ケッ トである。 例えば、 非同期パケッ トの長さは最大 7 5 〃 s とされている。 こ の場合、 非同期パケ ッ トの転送はそのパケ トが終了するまで転送されるので、 前記サィ ク ルタイ マーの周期を越えて転送される ことが起きる c
さて、 これら各種のネ ッ ト ワークを利用して、 音声データ、 画像デ一タあるい は演奏データなどの時系列データを伝送する埸台において、 £送経路が完全な同 期通信方式とされていないときには、 伝送されるデータの時間軸上での再現性を 保証するために、 データ 自身にそのデータが再現されるべき時刻を示すタ イム ス タ ンプを付加して送信し、 受信側ではそのタイ ムスタ ンプを参照して、 当該時刻 に到達した時点で当該データを再生することが行われている。
このよ うなネッ トヮーク上で用いられるタイムスタ ンブとしては、 時間を一意 に認識することができるものでなければならない。 すなわち、 タイムスタ ンプに は、 ある程度妥当と思われる時間幅以上の繰り返し周期が必要となり、 そのため には多く の情報量を必要とすることとなる。 情報をデジタル表現で表わす場合は, 多く の情報置は多くのビッ ト数に相当するため、 タイ ムスタ ンプによつて指定す る時間情報の時間分解能を上げるためには、 多く の情報量、 すなわち、 多くのビ ッ ト数を必要とすることとなる。 例えば、 前記図 2 5 に関して説明した場台にお いては、 3 2 ビッ ト長のタイ ムスタ ンプが用いられていた。
さ らに、 前述のようなタイ ムスタ ンブを付加してデータを送信する タイ プの伝 送方式においては、 デ一タのほかにタ ィ ム ス タ ンプ情報を所定期間ごとに送る必 要があり、 タ イ ムスタ ンブ情報の送 f言データに対する割台は小さいことが望ま し しかしながら、 前述のように、 タイ ムスタ ンプにより表現される時間の一意性 の確保や時間分解能の向上のためには、 タ イ ムス タ ンプのビッ ト数が大き く なつ てしまい、 データ 送効率が低下してしま うという問題点があった。
また、 データの処理時点を指示する タ イ ムスタ ンブを付与した場合、 ネ ッ ト ヮ 一クの遅延や、 途中に介在するブリ ッ ジゃルータなどの処理の遅延によって、 デ -タが到着した際に、 タ イ ムスタ ンブの時刻が過去を表す時刻になつているこ と が考えられる c これを防ぐためには、 不 ッ トワークの拡張等を考慮に入れた上て の十分将来のタ イ ムスタ ンプを付与することが必要になる。 しかしながら、 この よ όにすると、 データ再生に遅延が生じるだけではなく、 受信側に多くのデータ を格納するバッ フ ァが必要になるという問題点があつた。
また、 タイ ムスタ ンプのデータ置を小さ くするためにタイムスタ ンプを相対値 で表すこ とが考えられる力 このよう にすると 送経路にジ タが存在する場台、 データ間の相対的な時間関係が失われるおそれがあった。
ところで、 このようなタイ ムスク ンブの例として、 S M P T Eタイ ム ' コー ド が知られている。 これは S M T P E ( Soc i ety of Mo t ion P i c tur e and Te l ev i s i on Engi neer s ) により定められたタイ ム ' コー ドであり、 1 コマ 1 コマの映像デ ータに 8 0 ビ ッ トからなるア ド レ ス (〇〇時〇〇分〇〇秒〇◦コマで表示された タイ ムコー ドとユーザー用ビッ 卜からなる) を付加しておき、 編集処理および複 数の素材、 機器の同期走行に使用するものである。
また、 近年各種のマルチメディ ァ装置や A V機器のデジタル化が進み、 複数個 のマルチメディ ァ関連機器を I E E E 1 3 9 4などのネ ッ トワークを用いて相互 に結台し、 マルチメディ アシ ステ厶を構成するこ とが提案されている。
このよ うにネ ッ トワークを利用して、 デジタルサウ ン ドデータ、 デジタルビデ ォデータあるいは演奏データなどの精密なタイ ミ ング参照を必要とするデータを 伝送する場台には、 これらのデータの時間軸上での再現性を保証することが必要 となる。
例えば、 それぞれ固有の機能を有する複数のノ ー ドをネ ッ ト ワークで結台する ことによ り構成されたマ ルチ メ デ ィ ア シ ス テムにおいては、 あるノ ー ドで生成さ れたデータに対してそれぞれ予定された処理を行うために、 生成されたデータを 対応する処理を実行するノー ドを経由するように複数の経路を介して他のノ一ド に転送することとなる。 したがって、 各データは、 それぞれの経路中のノ一ドに おける処理時間のために、 それぞれ異なる遅延時間をもって出力ノー ドに到達す ることとなり、 データの時間軸上での再現性を保 IEすることができなく なる。
このことを図 2 6を参照してさ らに詳細に説明する。 この図に示した例におい ては、 ノ ー ド 1 ( N 1 ) 〜 ノ ー ド 4 ( N 4 ) の 4 つの ノ ー ド力 I E E E 1 3 9 4 により接铳されているものとする。 前述したよう に、 当該シス テ ムを構成するた めの種々の装 Sがノ― ドとなり う るが、 ここでは、 全体と して例えば楽音発生装 置が構成されているものと し、 ノー ド 1 は音源装置、 ノー ド 2は楽音に対してビ ブラー トを付加するためのェフ エクタ、 ノー ド 3 は楽音に対してパンニングを施 すためのェフエクタ、 ノー ド 4 は各楽音信号を混台するための ミキサであるとす る o
このように構成された楽音発生装匱において、 音源装置であるノー ド 1 から所 定のタイ ミ ング (フレーム) 毎に複数の楽音が出力されるのであるが、 この楽音 には、 そのまま出力されるもの、 ビブラー トを付加されるもの、 パンニングされ るもの、 および、 ビブラー トを付加された後にさらにパンニングされるものの例 えば 4つの種類があるとする。 この場台、 前記ノ ー ド 1 の音源装置は、 楽音の前 13 種類の処理の種類にそれぞれ対応する ネ ッ ト ワーク のチ ヤ ンネルに前記各種 類の楽音を出力する。
ノー ド 2、 ノー ド 3およびノー ド 4などの他のノ一ドには、 それぞれ自己が受 信すべきネッ ト ワ ーク チ ャ ンネルが予め設定されており、 前記ネッ ト ワークから 受信される各チ ヤ ンネルのデータのうち自己の受信すべきチ ヤ ンネルのデータを 取り込んでそれぞれ所定の処理、 例えば、 ビブラ ー ト 、 パンユ ング、 ミ キ シン グ などを行う。 そして、 必要に応じて当該処理の終了したデータを再びネッ トヮ一 ク に送出する。
前記ネ ッ ト ワーク上における各チ ヤ ンネ ルの配置の一例を図 2 7に示す。 図示 するように、 時間軸上に各チ ヤ ンネルに対応するバゲ .,' トが所定のギャ ッ プを挟 んで配列されている。 そして、 各バケツ トは、 アー ビ ト レー シ ョ ン部 P 1 と、 そ の前後にデータプリフ ィ ッ ク ス部 P 2およびデ一夕エ ン ド部 P 4が付加されたデ ータバケ ツ ト P 3 とから構成されている。
なお、 前記パケ ッ トはアイ ツク ロナ ス転送によるパケッ トおよび通常のハ'ケ '.' トのいずれであつてもよい。
このように各構成要素がネ ッ ト ワー ク により接続されている楽音発生装置にお いて、 前記ノ一ド 1 の音源装置は、 発生した楽音デ一タのうちエフ ヱ ク ト処理を 施さないものについては、 前記ネ ッ ト ワー クの例えば第 1 のチ ャ ンネ ル c 1 を 介してノー ド 1 から ミキサであるノ ー ド 4 に直接送出する ( A 1 4 。 また、 リ パーブ処理を施す楽音については、 例えば第 2 のチ ャ ンネルを介して、 リパーブ 処理部である前記ノー ド 2 に送出する ( A 1 2 ) 。 また、 パンニ ングを施す楽音 については、 例えば第 3 のチ ャ ンネル c h 3を介して、 バンニ ング処理を実行す るノー ド 3に送出する (A 1 3 ) o
前記ノ ー ド 2 の リ バーブ処理部は、 前記ネ ッ ト ワーク におけ る第 2 チ ャ ンネ ル c 2の楽音データ (A 1 2 ) が自己が受け取るものであると判定し、 該楽音デ 一夕を読み込んで、 所定のリ バ一ブ処理を施す。 そして、 リバーブ処理を施した 楽音のうち、 さらにパンニングを施すこととされている楽音については、 第4の チャ ンネル C h 4 に送出してパンニング処理部であるノー ド 3 に送る ( A 1 2 3 ) 。 また、 パンニ ングを施さない楽音については、 前記 ミ キサであるノ ー ド 4に送 出する ( A 1 2 4 ) o このノー ド 4 に送出する楽音データは例えばチヤ ンネル c h 5 を用いて送出される。
前記ノ一ド 3のパンニング処理部は、 前記チヤ ンネ ル c h 3 を通じて前記ノ一 ド 1 から送出された楽音データ ( A 1 3 ) 、 および、 前記 c 4を介して前 Kノ 一ド 2から送出された楽音データ (A 1 2 3 ) を、 自己の処理すべき楽音である と判断して、 これらの楽音データを受信し、 所定のパンニング処理を施す。 そ し て、 前記チャ ンネ ル c h 4から受 f言してパ ンニングを施した楽音データはチヤ ン ネ ル c h 6を介して前記ノ一ド 4 に送出し (A 1 2 3 4 ) 、 また、 前記チ ヤ ンネ ノレ c h 3 を介して受信しパン ニ ング処理を施した楽音についてはチ ヤ ンネ ル c h 7を介して前記ノ一ド 4 に送出する ( A 1 3 4 ) 。
以上のことより 、 前 己ノ一 ド 4 の ミ キサには、 次の 4 とおりのルー トを通って、 前記ノー ド 1 で生成された楽音が到達する ことになる。 ( 1 ) チ ャ ン ネ ル c h l を通って、 直接送信される楽音データ ( A 1 4 ) 、 ( 2 ) ノー ド 2 においてリ バ ーブ処理を施された c h 5のデー夕 ( A 1 2 4 ) 、 ( 3 ) ノー ド 2 においてリ バ ーブ処理を施され、 さ らに、 ノー ド 3 においてパ ンニ ン グ処理を施された c h 6 のデータ ( A 1 2 3 4 ) 、 および、 ( 4 ) ノー ド 3 においてパンニ ング処理が施 された c h 7 のデータ ( A 1 3 4 )
このよ うに、 音源であるノ ー ド 1 において発生された楽音テータは、 それぞれ 異なる経路を通つてノー ド 4 の ミ キサに到達するのであるが、 ノー ド 2および 3 においてそれぞれの処理のための実行時間が必要となるため、 同一のタイ ミ ング でノ ー ド 1 から発生された楽音であつても、 その通過する経路に応じて ミ キサで あるノー ド 4 に到達する時刻が異なること となる。 こ こで、 ノー ド 2 における処 理に要する時間を a 2 、 ノー ド 3 における処理に要する時間を a 3 とする と、 前 記 ( 2 ) 、 ( 3 ) および ( 4 ) のルー トを通ったデ一タは、 前記 ( 1 ) のルー ト を通つたデータに対して、 それぞれ、 a 2、 a 2 + a 3 、 および、 a 3だけ遅れ てノ ー ド 4 に到達するこ ととなる。 これにより、 ノー ド 4 のミ キサにおける加算 のときにタイ ミ ングのずれが発生すること となる。
また、 上記においては、 各ルー トを通つたデータの到達時間の差は各ノ一ドに おける処理遅延時間によるものと したが、 現実には、 各ノー ドがデータをネッ ト ワークに送出するタイ ミ ングは ト ラフ ィ ッ クの混み具台などに応じて変動するこ とがあり、 また、 各ノ一 ドにおける処理時間も一定の時間であるとは限らないた め、 前記到達時間の差は一定の値とはならない場台が多い。 発明の開示
この発明は上述の点に鑑みてなされたもので、 デイ ジタ ルオーディォデータの ような、 一定周期の時系列的な配列を持つ複数のデータを、 受信側においてその 時間関係を再現できるような形態で、 送信側からネッ トワークを介して伝送する 場台において、 非同期バケツ トを採用してその利点を享受できるようにすると共 に、 パケ ッ 卜に含めて送信する時間情報をできるたけ少ないデータ量で表現して 1 パケ ッ ト当りの送信データ童を减少させることができるよう にしたデータ伝送 方式を提供することを第 1 の目的とする。
また、 送受信間の時間遅れをできるたけ少なく したデータ伝送方式を提供しよ うとする ものである。
更に、 少ないデータ簠で時間情報を表現した場合において、 受信側での時間惰 報の再生演算処理をできるだけ簡略化できるようにしたデータ ί云送方式を提供し よう とするものである。
更に、 本発明は、 データにタ イ ムス タ ンブを付加して送 ί言する ことによ り、 伝 送されるデータの時間拳由上ての再現を図る ことができ るよ うに したデータ転送シ ステムにおいて、 タ イ ム ス タ ンプの ビ ッ ト数を減らしてデータ転送効率を向上す ることを第 2の目的と している。
また、 本発明は、 データをブリ ッ ジゃルータを介在させて転送させる場合に、 タイ ムスタ ンプのビッ ト数を削减して転送するこ とができ ると共に、 データ再生 に運延が生じないと共に、 データ間の相対的な時間関係を失う ことのないデータ 耘送方式を提供することを第 3の目的としている。
更に、 本発明は上記のような問題点を解消し、 ネ ッ トワーク上の複数の経路を 通過してきたデータを、 所定のノー ドに同期して到達できるようにすることを第 4の目的としている。 第 1 の目的を達成するために、 この発明に係るデータ伝送方法は、 第 1 の観点 によれば、 ( a ) 送信側において、 所定の周期の時系列的な配列を持つ複数のデ 一夕を供給するス テ ッ プと、 2以上の所定数の前記データ毎に 1 つのデータを特 定し、 該特定されたデータの時間位置を示す時間情報を付加するステ ッ プと、 所 定数の前記データ及び該データの中のいずれかに対して付加された前記時間情報 を 1 パケ ッ ト と して、 ネ ッ ト ワー クに送出する ス テ ッ プとを具備し、 ( b ) 受信 側において、 前記ネッ ト ワー クを介して前記パケ トを受信するステッブと、 受 信したパケッ トに含まれる前記データを一時記憶するス テ ッ プと、 前記一時記憶 したデータを順次再生読出しするためのステップであつて、 前記受信したバゲ .', トに含まれる前記時間情報に基づきこの読出しを制御することにより、 前記所定 の周期に対応する周期で再生が行われるよ όにするス テ ッ プとを具備することを 特徴とする。
この第 1 の観点に従えば、 時間情報をすベてのデータに対して付加することを せずに、 2以上の所定数の前記データ毎に 1つのデータを特定し、 該特定された データに対して時問情報を付加するようにしている。 そして、 1 パケ ッ トを所定 数のデータによつて樣成し、 かつ該データの中のいずれかに対して付加された前 記時間情報を該 1 パケッ トに含めて、 該パケッ トをネ ッ ト ワークを介して送信す る。 受信側では、 ネッ ト ワー クを介して受信したパケ ■', トに含まれる前記データ を一時記憶し、 こ の一時記憶したデー タ の順次読み出しを、 該受信したハ 'ケッ ト に含まれる前記時間情報に基づき制御することにより、 元の所定の周期に対応す る周期で再生が行われるようにする。 従って、 非同期パケッ トを採用してその利 点を享受するとことができると共に、 1 パケッ トにっき 1 つの時間情報を含むだ けであるから、 時間情報をできるだけ少ないデータ量で表現して 1 バケツ ト当り の送信データ置を减少させることができる。
こ の発明に係るデータ伝送方法は、 第 2の観点に従えば、 ( a ) 送信側におい て、 第 1 の周期の時系列的な配列を持つ複数のデータを供袷するステップと、 2 以上の所定数の前記データ毎に 1 つのデータを特定し、 該特定されたデータの時 間位置を示す時間情報を付加するステ ッ プと、 前記第 1 の周期よりも長い所定の 第 2の周期毎に、 該第 2の周期の 1周期内で供袷された前記データ及び該データ の中のいずれかに対して付加された前記時間情報を 1 パケ ッ ト と して、 ネ ッ ト ヮ ーク に送出するステップとを具備し、 ( b ) 受信側において、 前記ネ ッ ト ワーク を介して前記パケ "> トを受信する ステ ツ プと、 受信したパケ .', トに含まれる前 己 データを一時記憶するステツ プと、 前記一時記憶したデータを順次再生読出しす るためのステ ップであって、 前記受信したパケ ッ トに含まれる前 Ϊ己時間情報に基 づき この読出しを制御するこ とにより、 前記第 1 の周期に対応する周期で再生が 行われるよう にするステ ツプとを具備する ことを特徴とするものである。
この第 2の観点に従えば、 上記と同様に、 時間情報をすベてのデータに対して 付加する ことをせずに、 2以上の所定数の前記データ毎に 1 つのデータを特定し、 該特定されたデ一タに ¾して時間情報を付加するようにしている。 そ して、 第 1 の周期よ り も長い所定の第 2 の周期毎に、 ¾第 2 の周期の 1 周期内で供袷された 前記デ一タによって 1 バケ ツ トを楫成し、 かつ該データの中のいずれかに対して 付加された前記時間情報を該 1 パケ .,. トに含めて、 該パケ ッ トをネッ ト ワークを 介して送信する。 受信側では、 ネ ッ ト ワークを介して受信したパケッ トに含まれ る前記データを一時記憶し、 この一時記億したデータの順次読み出しを、 該受信 したパケ ッ トに含まれる前記時間情報に基づき制御するこ とによ り、 元の第 1 の 周期に対応する周期で再生が行われるよう にする。 従って、 この場合も、 非同期 パケ ッ トを採用してその利点を享受すると ことができ ると共に、 1 バゲ ッ トにつ き 1 つの時間情報を含むだけであるから、 時間情報をてき るだけ少ないデータ置 で表現して 1 パケ ッ ト当りの送信デ一夕量を減少させるこ とができる。
また、 この第 2 の tl点に従えば、 所定の第 2 の周期毎にパケ ノ ト送信を行うの で、 所定数のデータが溜るまで待機する必要がな く 、 送受信間の時間遅れをでき るだけ少なく したデータ伝送方式を提供することができる。
なお、 ここで述べている非同期パケ ッ トの意味は、 パケ ッ トの送信周期が、 送 信すべきオ リ ジナルのサ ンプルデータに対して、 そのサ ンプリ ング周期から独立 して設定されている、 という意味合いである。 パケッ トそのもの送受信について は、 一定周期で行われているので、 同期通信となっている。
第 2の目的を達成するために、 本発明のデータ送信装置は、 一定の周期を有す る第 1 のタイ ミ ング信号からの差分データ と して表わされたタ ィ ム スタ ンブが付 加された送信データを、 前記第 1 のタイ ミ ング信号に準じて発生される第 2の夕 ィ ミ ング信号に基づいて、 ネ ッ トワーク上に送出するデータ送信装置であって、 F I F 0バッ フ ァを有し、 前記第 1のタ イ ミ ング信号に基づいて前記送信データ を前記 F I F 0バッ フ ァに害き込み、 前記第 2のタイ ミ ング信号に基づいて前記 F I F 0 バッ フ ァから前記送信データを取り出してネ フ ト ワーク上に送信するも のである。
また、 本発明のデータ受信装 gは、 一定の周期を有する第 1 のタイ ミ ング信号 からの差分データ と して表わされたタイ ムスタ ンプが付加され、 前記第 1 のタイ ミ ング信号に準じて発生される第 2のタイ ミ ング信号に基づいてネ ッ ト ワーク上 に送信されたデ一タを受信するデータ受信装置であつて、 F I F 0バッフ ァを有 し、 前記ネ ッ ト ワークから受信した前記データを前記第 2 のタ イ Ϊ ング信号に基 づいて前記 F I F 0バッ ファに書き込み、 前記第】 のタイ ミ ング信号に基づいて 前記 F I F 0バッ ファからデータを取り出し、 前記タ ィム スタ ンプに基づいて当 該データを時間軸上に再現するものである。
さらにまた、 本発明のデータ転送シ ス テムは、 データ送信装置とデータ受信装 置とを有し、 一定の周期を有する第 1 のタイ ミ ング信号に準じて発生される第 2 のタイ ミ ング信号に基づいてネッ トワーク上でのデータの転送が制御されるデ一 タ転送システムであって、 前記データ送 ί言装置は、 前記第 1 のタイ ミ ング信号か らの差分千一タと して表わされたタイ ム ス タ ンブを送信データに付加し、 前記タ ィム スタ ンプが付加された送信データを前記第 1 のタ イ ミ ング信号に基づいて第 1 の F 1 F Οバッ ファに害き込み、 前記第 2のタイ ミ ング信号に基づいて前記第 1 の F 1 F Οバッ ファから前記送信データを取り出してネ ッ トワーク上に送信し、 前記データ受信装置は、 前記第 2 のタイ ミ ング信号に基づいて前記ネ ッ ト ワーク 上に送信されたデータを第 2の F I F Oバッフ ァ に害き込み、 前記第 1 のタイ ミ ング信号に基づいて前記第 2の F I F 0バッ フ ァから受信したデータを取り出し、 前記タィ ムスタンプに基づいて当該データを時間軸上に再現するものである。 第 3の目的を達成するために、 本発明のデータ転送方式は、 名目上定められた サイ ク ルと、 該サィ クル毎に確保されている帯域を使用してサイ クルスタートパ ケッ トに続いてデータを伝送するアイ ソ クロナス通信と、 前記サィ クルの周期の 内残された周期を利用してデ一タを ί云送する非同期パケッ ト通信とを行う通信方 式のデータ転送方式であって、 前記ァイ ソクロナス通信の所要周期と、 前記非同 期パケ ッ ト通信の所要周期とを加算した周期が前記サィ クルの周期を越えること が可能とされており、 再生時点を定める再生用タィム スタ ンプの付与された前記 データを受信したときに、 該データが厲するサイ クルスター トパケッ トを基準と して前記受信されたデータが遅延している遅延時間を検出し、 該サイ ク ルスター トパケッ トが属するサイ ク ルのス ター ト時刻に、 前き己サィ ク ルの 1周期時間およ び前記検出された遅延時間を加算した時刻を転送用タィ ム スタ ンプと して、 前記 受信されたデータに付与し、 該転送用タイ ムスタ ノブの時刻に達したとき、 ある いは越えたと き に、 前記受信されたデー タ の転送 ¾1備を行う よ う に している。
また、 上記データ転送方式において、 あるセグ メ ン トから前記データをネッ ト ワークに挿入配置されたブリ ッ ジが受信し、 該ブリ .,' ジは、 前記転送用タイム ス タンプの時刻に達したとき、 あるいは越えたときに、 前記受信されたデータを待 機用バッ フ ァ に追加し、 所定のサ イ ク ルス ター ト パケ ッ ト が異なるセ グメ ン ト に 送出されたとき に、 前記待機用バッフ ァから送信バッ フ マ に前記受信されたデ一 タを追加して、 前記異なるセ グメ ン ト に前記受信されたデータを送信するよ όに している。
さ らに、 上記データ転送方式において、 前記再生用タィ 厶ス タ ンプが前記サィ ク ル内の相対的タ ィ ム ス タ ンプと されており、 ¾再生用タ ィ ム ス タ ンプが前記受 信されたデ一タに先行するサ イ ク ルス ター トパケ ッ トが厲するサ イ ク ルのスタ ー ト時刻に、 前記サイ タ ルの 〗 周期時間が加算された新たなタイ ム スタ ンプに置き 換えられ、 該新たなタ イ ムス タ ンプの時刻に達したとき、 あるいは越えたときに 前 S己受信デ一 タ の再生処理を行うよ う に している。
このような本発明によれば、 受信データのサイ ク ルスター トバケツ トからの遅 延時間を、 該サイ クルスター トパケッ トが厲するサイ ク ルのスター ト時刻に、 サ ィ ク ルの 1周期時間と共に加算した時刻を転送用タィ ムスタンプとして、 受信デ 一タに付与するようにしたので、 データ転送を効率的に行う こ とができ ると共に、 データ間の相対的な時間関係を失 όことを防止することができる。
また、 再生用タ イ ム ス タ ンプに、 受信データ に先行するサイ ク ルス ター ト パケ ッ トが属するサィ ク ルのスター ト時刻と、 前記サ ィ ク ルの 1周期時間とを加算し て新たなタ イ ム ス タ ンプを生成し、 再生用タ イ ム ス タ ンブをこのタ イ ムス タ ンプ に置き換えるよ う に したので、 再生用タ イ ムス タ ンプの ビ ッ ト長を 3 2 ビ ッ ト の ような長いビッ ト長としなくても、 データ間の相対的な時間関係を失うことなく 効率的にデータを再生することができるよ όになる。
第 4 の目的を達成するために、 本発明のネッ ト ワー ク データの同期方法は、 複 数のノー ドが接統されたネ ッ トワーク上に転送されるデ一タの同期方法であって、 同期をとることが要求される複数のデータを送出するノー ドは、 該複数のデータ に所定のデータマ一クを付加して前記ネ ッ トワークに送出し、 前記ネッ ト ワーク からデータを受信したノ ー ドは、 前記データマー クを参照することにより当該複 数の受 i デー タの同期をと る よ う にな されている ものである。
また、 本発明のネ ッ ト ワー クデータの同期装置は、 複数のノ一ドが接統された ネッ トヮーク上に転送される複数のデ一タ の同期装置であって、 前記ネッ トヮ一 クから受信したデータ中に含まれているデータマーク に基づいて、 同一のデータ マー クが付加されている複数の受信データ の同期をと るよ うになされている もの である。 そ して、 前記ネ ッ ト ワー クのノ ー ドは、 前記ネ ッ ト ワー クデータ の同期 装置の機能を有しているものである。 図面の簡単な説明
図 1 は、 この発明に従うテー タ ί云送方法及びシ ス テ ムのいく つかの具体例をィ ラ ス ト的に図示するタイ ミ ン グチ ヤ一ト、
図 2は、 この発明に係るデータ伝送方法及びシ ス テ ムの一実施例の全体構成を 示す概略ブロ ッ ク図、
図 3は、 図 2の送信側で行われる送信準備処理の一例を略示するフ ロー図、 図 4は、 図 2 の送信側で行われる送信割込処理の一例を略示するフ ロー図、 図 5は、 図 2の受信側で行われる受信処理の一例を略示するフ σ—図、 図 6は、 図 2の送信側及び受信側のどちらにでも使用できる装置のハー ドウュ ァ構成を示すプロ ック図、
図 7は、 この発明に係るデータ転送シス テムの第 2 の実施例の概略を示すプロ ック図、
図 8 は、 図 7 のデータ転送シス テムにおける各局 (すなわちノ ー ド) のハー ド ゥヱ ァ構成を示すプロ ッ ク図、
図 9 Aは、 図 7 のデータ転送システムにおける送信装置を説明するための機能 ブロ ッ ク図、
図 9 Bは、 図 7 のデータ転送シ ステムにおける受信装置を説明するための機能 プロ ッ ク図、
図 1 0 Aは、 送信パケッ トの一例を時系列的に説明する図、
図 1 0 Bは、 この発明に従う 1 パケ ッ トのデータ構成例を示す図、
図 1 0 Cは、 従来技術に従う 1 パケ ッ トのデータ構成例を示す図、
図 1 1 は、 こ の発明の第 2 の実施例に係るデータ転送シ ステ ムの動作を説明す るためのタ イ ミ ン グチ ャー ト 、
図 1 2 A乃至図 1 2 Cは、 同第 2 の実施例に係るデータ転送シ ステムにおける 送信側の処理例を示すフ ローチ ャー ト 、
図 1 3 A乃至図 1 3 Cは、 同第 2 の実施例に係るデータ転送システムにおける 受信側の処理例を示すフ ローチ ャー ト 、
図 1 4 は、 送信パケッ トの一例を時系列的に説明する図、
図 1 5は、 この発明に係るデータ ¾送シ ステムの第 3 の実施例が適用されるネ ッ ト ワークの構成の一例を示すブロ ッ ク図、
図 1 6 は、 同第 3 の実施例に係るデー タ転送シ ステムの動作を説明するための タ イ ミ ン グチ ヤ一ト、
図 1 7 は、 同第 3の実施例に係るデータ転送システムにおける受信側のサイ ク ルスター ト割込処理のフ ローチ ヤ一ト、
図 1 8は、 同第 3の実施例に係るデータ転送シ ステムにおけるデータ受信割込 処理のフ ローチ ャー ト、
図 1 9は、 同第 3 の実施例に係るデータ転送シ ステムにおけるタイマ割込処理 のフ ローチャー ト 、
図 2 0は、 この発明の第 4 の実施例に係るネ ト ワークデータの同期方法が適 用されたネツ ト ワーク システムの一実施の形態の構成例を示す図、 図 2 1 は、 同第 4 の実施例におけるデ一タの到達するタ イ ミ ングを説明するた めの図、
図 2 2 は、 同第 4の実施例におけるデ一タを送出するノ一ドの勅作を説明する ためのフ ローチャー ト、
図 2 3 は、 同第 4の実施例における受信ノー ドの動作を説明するためのフロー チャー ト、
図 2 4 は、 同第 4の実施例における同期制御用の受信ノ一ドの動作を説明する ためのフ ローチャー ト、
図 2 5は、 ネ ッ トワー ク上のパケッ トの従来例を説明するための図、
図 2 6 は、 従来のネッ ト ワーク シス テムの一例を示す図、
図 2 7 は、 ネ ッ トワー クにおけるデータチ ャ ン ネルの一例を説明するための図 である。 発明を実施するための最良の形態
本発明をより詳細に説明するために、 添付の図面に従ってこれを説明する。 まず、 理解を容易にするために、 この発明に従うデータ £送方式のいくつかの 具体例をイ ラ ス ト的に図示すると図 1 のよ うである。 図 1 の ( a ) は本発明の第
1 の実施例の第 1 の観点に従 όデ一夕 ί云送方式の一例をィ ラス ト δ3に図示するも のであり、 ( b ) と ( c ) は第 2の IS点に従うデータ伝送方式の異なる二例をィ ラ ス ト的に図示するものである c
図 1 ( a ) , ( b ) , ( c ) の各 1段目には、 送信側で供給される、 所定の周 期 (第 1 の周期) Tの時系列的な配列を持つ複数のデータの時系列配列の一例を 示しており、 数字 0 , 1, 2 , 3 , …は、 各データの時系列順序を示す序数であ る。 1段目における特定のデータの上に示された数字 ( 1, 1 3 , 1 7, 2 1 , 2 9 . 3 3等) は、 該データ に付加されるタ イ ム ス タ ンプすなわち時間情報を例 示している。 S Fはパケッ ト送信のサービス区間の 1 周期を示し、 送信するデー 夕の周期 Tは適宜可変であるのに対して、 非同期パケッ トにおいては、 該サー ビ ス区間 S Fの 1周期は、 所定値に固定されている。 従って、 S Fと Tの時間関係 は図示のものに限らず、 任意の時間関係をとり う るものであり、 一般的には両者 の周期は非整数倍関係となる (勿論、 たまたま整数倍関係となることがあるかも しれない) 。
図 1 ( a ) , ( b ) , ( c ) の各 2段目には、 ネ ッ ト ワークを介して送信され るパケ ッ トの状態を示しており、 タ イ ム ス ロ ッ ト枠内に記した数字が該バケッ ト に含まれるデータを識別する序数であり、 その下側に記された数字 ( 1 , 1 3 , 1 7, 2 1 , 2 9 , 3 3等) が該パケ ッ ト に含まれるタ イ 厶ス タ ンプすなわち時 間情報を示す。 図 1 ( a ) . ( b ) , ( c ) の各 3段目には、 受信側におけるデ ータの再生状態を示している。
第 1 の観点に従う図 1 ( a ) の例について説明する と、 送信に際して、 1 パケ ■'· トを所定数 N (図の例では N = 4 ) のデ一 タで構成し、 かつ 1 バゲ ッ ト のデー タ数 N ( = 4 ) と同数のデータ毎に、 該パケッ ト の先頭のデ一タを特定し、 ¾特 定された先頭のデータの時間位置を示すタ イ ム ス タ ンプを付加するよ 0に してい る。 伊 Iえば、 最初のパケ ッ ト は、 序数 0 , 1 , 2 . 3 の 4 つのデータからなり、 その先頭の序数 0 のデータの時間位置を示すタィ ムス タ ンブ 「 0」 が付加される。 この場台、 送信側で 4 つのデータが供給されるにはサー ビス区間 S F の 2 サイ ク ル周期が必要であるから、 最初のデータ (序数 0 ) が供袷されたときから、 2サ — ビス区間 S Fの経過後に、 最初のパケ ッ トが送信される。 従って、 パケ ッ ト送 信の立上り時間遅れは、 サー ビス区間 S F の 2 サ イ ク ル周期である。 2番目の '、' ケッ トは、 序数 4, 5 . 6 , 7 の 4 つのデー タか らな り 、 その先頭の序 4 のデ ータの時間位置を示すタ ィ ム ス タ ンプ 「 1 7 」 が付加される。 この場台、 2番目 のパケ ッ トに含まれる最後の序数 7のデ一タが供給されるサー ビス区間 S F (こ れを S F 4で示す) の次のサー ビス区間 S F (これを S F 5で示す) で該 2番目 のパケ ツ トが送信される ことになるから、 最初のパケ ',. ト送信時から 2サー ビス 区間後に 2番目のパケ ッ トが送信される。
受信側においては、 順次与えられる各パケ ッ 卜 に含まれるタ イ ムス タ ンプの変 化若し く は関数に基づき、 送信側における元の所定周期 Τを推定する ことができ る。 タ イ ムス タ ンプに基づく 元の周期 Τの推定方法には種々あり うる力 最も典 型的な方法は、 相前後する 2 つのパケ ッ 卜 に含まれる タ イ ムス タ ンプの差から次 のような演算を行う こ とである。 すなわち、 今回送信されてきたパケ ッ 卜のタイ ム ス タ ンプ値を T S ( i ) とし、 その前に送信されてきたパケッ トのタイムス タ ン ブ値を T S ( i— 1 ) とすると、 その間に N個のデータが存在しているのであるか ら、 下記式の演算を行う ことにより、 元の周期 Tを推定することができる。
T = { T S ( i ) — T S ( i— 1 ) } Z N .'· (式 1 )
受信側においては、 こ う して推定した元の周期 Tに対応する周期で、 受信した パケ ッ トに含まれるデータを順次再生読出しする。 かく して、 元の周期 Tでのデ ータ再生を確実にすることができる。 図 1 ( a ) の場合、 上記推定演算のために、 2つのバケツ トの送信がなされるまで待機しなければならないため、 受信側でデ 一夕再生が開始するのは、 送信側で最初のデータ (序数 0 ) が供給されたときか ら、 サー ビス区間 S Fが 5サイ クル経過したとき、 すなわち図 1 の 6番目のサー ビス区間 S F 6のときとなる。
上記のように、 第 1 の tS点に従う伝送方式のように、 】 パケッ ト当りのデ一夕 数を所定の固定数 Nとすると、 パケッ ト送信の立上り遅れと、 受信側におけるデ ータ再生開始の遅れとが、 問題となる。 上記第 2の観点に従う伝送方式は、 この 点を改善し、 そのような遅れの問題をできるだけ回避することができるものであ る。
図 1 ( b ) 及び ( c ) に例示された上記第 2の覲点に従う ί云送方式が第 1 の観 点に従う伝送方式と異なる点は、 该第 2の観点に従う伝送方式では、 所定数のデ 一夕が溜るまでパケッ ト送 ί言を待たずに、 所定の第 2の周期毎に規則的にパケ ッ ト送信を行うようになっている点であり、 これに伴い、 1 バケツ トを構成するデ 一タ数が可変となるという点である。 すなわち、 送信すべきデータのォ リ ジナル 周期である第 1 の周期 Τより も長い所定の第 2の周期毎に、 該第 2の周期の 1周 期内で供給された前 S己データによ って 1 パケッ トを構成するので、 該第 2 の周期 毎にパケ ッ ト送信が行われることとなり、 また、 一般に第 1及び第 2の周期の関 係は非整数倍的になるため (勿論、 たまたま整数倍関係となることがあるかも し れないが) 、 該第 2の周期の各周期毎に該 1周期内に含まれるデータの数が可変 的に (± 1 の範囲で) 変動することになる。 図 1 ( b ) 及び ( c ) の例において は、 パケ ッ ト送信を行う第 2の周期と して、 1 サー ビ ス区間 S F毎の周期で行う ことが示されている。 図 1 ( b ) の例について説明すると、 各サー ビス区間毎に、 その区間で供給さ れたデータを 1 パケッ トに含めて、 次のサー ビス区間においてネ ッ ト ワークに送 信する。 1 パケ ッ トに含まれるデータの数 Xは可変であり、 図の例では、 3個又 は 2個である。 図 1 ( b ) の例では、 1 パケ ッ トのデータ数 X (可変) と同数の データ毎に、 該パケ ッ トの先頭のデータを特定し、 亥特定された先頭のデータの 時間位置を示すタ ィム スタ ンブを付加するように している。 従って、 タイ ムスタ ンプを 2以上の所定数のデータ每に付加するようになっているが、 この所定数と は可変の 1 パケ '., ト構成データ数 Xに連動する可変数である。 例えば、 最初のパ ケ ッ トは、 序数 0, 1 , 2の 3 つのデータからな り、 その先頭の序数 0のデータ の時間位置を示すタィ ムスタ ンプ 「 0 」 が付加される。 この場台、 最初のデータ (序数 0 ) が供袷されたときから、 1 ー ビス区間 S Fの経過後に、 すなわち 2 番目のサー ビス区間 S F 2のと きに、 最初のバケ ツ トが送信される。 従って、 パ ケッ ト送信の立上り時間遅れは、 1 サー ビス区間 S F のみである。 2番目のパケ ト は、 序数 3 , 4の 2 つのデータからなり、 その先頭の序数 3 のデータの時間 位匱を示すタ ィ ム ス タ ンプ 「 1 3 」 が付加される。 この場台、 2番目のパケッ ト に含まれる最後の序数 4 のデ一タが供給されたサー ビス区間 ( S F 2 ) の次のサ 一ビス区間 ( S F 3 ) で該 2番目のパケ ッ トが送信される ことになるから、 最初 のパケ ッ ト送信時か 1 サー ビス区間後に ¾ 2番目のパケ ッ トが送信される。 この場合も、 受信側においては、 順次与えられる各パケ ッ ト に含まれるタイ ム スタ ンプの変化若しく は関数に基づき、 送信側における元の所定周期 Tを推定す るこ とができ る。 前述の通り、 タ イ ム ス タ ンプに基づく元の周期 Tの推定方法に は種々あり う るが、 最も典型的な方法は、 相前後する 2つのパケ ッ トに含まれる タイ ムスタ ンプの差から次のよ うな演算を行う こ とであるので、 この場合につい ての演算式を示すと下記のよ うである。
T = ( T S ( i ) — T S ( i— 1〉) / X … (式 2 )
ここで、 T S ( i )と T S ( i— 1 )は、 前述と同様に、 今回送信されてきたパケ ッ 卜 のタ イ ムス夕 ンブ値と、 前回に送信されてきたパケッ トのタイ ムスタ ンブ値であ る。 Xは、 前回に送信されてきたパケ ッ ト に含まれるデータ数であり、 前述の通 りの可変数である。
-1 B- 受 ί言側においては、 こう して推定した元の周期 Τに対応する周期で、 受信した バケツ トに含まれるデータを順次再生読出しする。 かく して、 元の周期 Τでのデ ータ再生を確実にすることができる。 図 1 ( b ) の場合、 送信側で最初のデータ (序数 0 ) が供給されたときから数えて 3番目のサ一ビス区間 S F 3のときに該 2番目のパケッ 卜が送信されるので、 受信側でデータ再生が開始するのは、 送信 側で最初のデータ (序数 0 ) が供袷されたときから、 サー ビス区間 S Fの 3サイ ク ル経過後、 すなわち 4番目のサービス区間 S F 4 のときとなる。 このよ うに、 図 1 ( b ) の場台では、 図 1 ( a ) の場合に比べて、 パケ ッ ト送信の立上りと受 信側におけるデータ再生開始とが早く なつており、 遅れの問題が改善されている ことが理解できる。 一方、 受 if側での時間情報の再生処理について考虔すると、 上記式 2 に示されるように、 可変数 Xで割算を行う構成となつており、 上記式 1 のよ うに固定数 Nで割算を行う構成に比べて、 その都度、 除数 Xを変更しなけれ ばならないので、 演算処理の構成が複雑となってしま うという問題がある。
図 1 ( c ) の例は、 図 1 ( b ) の例に対して更に改良を加え、 受信側での演算 処理を簡単化できるよ όにしたものである。 図 1 ( c ) の例について説明すると、 各サー ビス区間 S F毎に、 その区間で供給されたデータを 1 ケ ッ ト に含めて、 次のサー ビス区間においてネ ッ ト ワークに送信する c ( b ) と同様に、 1 バケツ 卜に含まれるデータの数 Xは可変であり、 図の例では、 3個又は 2個である。 ( c ) の例では、 時間情報の付加の仕方が ( b ) とは異なっている すなわち、 図 1 ( c ) の例では、 2以上の所定の定数 Mからなるデータ毎に 】 つのデータを特 定し、 該特定されたデータの時間位置を示すタィ ム スタンプすなわち時間情報を 付加するようにしている。 図示の例では、 Mは 4であり、 4個のデータグループ 毎に、 そのグループの先頭のデータの時間位置を示すタィム スタ ンプを付加する ようにしている。 従って、 タ イ ムスタ ンプを 2以上の所定数のデータ毎に付加す るよ うになっている力;、 この所定数とは ( b ) の例とは異なり、 可変の 1 パケッ ト構成データ数 X とは関係のない、 定数 M (図では 「 4」 ) である。
図 1 ( c ) の例では、 最初のパケッ トは、 序数 0 , 1 , 2の 3 つのデータから なり、 最初の M = 4個のデータのグループの先頭である序数 0 のデータの時間位 置を示すタイ ムス タ ンプ 「 0」 が付加される。 この場合、 最初のデータ (序数 0 ) が供給されたときから、 1 サービス区間 S Fの経過後に、 最初のパケ ", トが送信 される。 従って、 パケ ッ ト送信の立上り時間遅れは、 図 1 ( b ) と同様に、 1 サ — ビス区間 S Fのみである。 2番目のパケ ッ トは、 序数 3 , 4 の 2 つのデータか らなり、 そこには次の M = 4個のデータのグループの先頭である序数 4 のデ一夕 が含まれているので、 その序数 4 のデータの時間位置を示すタ ィ ムスタ ンブ 「 1 7 J が付加される。 この場台も、 2番目のパケ ッ トに含まれる最後の序数 4 のデ ータが供給されたサ一ビス区間 ( S F 2 ) の次のサー ビス区間 ( S F 3 ) で泫 2 番目のパケ ッ トが送信される ことになるから、 最初のパケ ッ ト送信時から 1 サー ビス区間 S F後に該 2番目のバケ ッ トが送信される。
なお、 1 バケ ツ 卜のデータ数が可変であるのに対して、 1 つのタ イ ムス タ ンプ を付加する 1 グループ内のテ一タ数 Mは定数であるので、 パケ ッ トによ っては、 タイ ムス タ ンプすなわち時間情報を伴わないものが出てく る。 図 1 ( c ) におけ る 4 番目のサー ビス区間 S F 4 において送信される序数 5 , 6 のデータを含むパ ケッ トがそれに該当しており 、 そのよ うなパケ ッ トにおいては、 有効なタ イム ス タ ンプ値を示すデータの代わ り に、 タ イ ム スタ ンプ無を表示する所定のデータ " v o i d " を送信する ものと している。 勿論、 必ずし もこの種のデータ " V o i d " を送信しなければならないわけではな く 、 そのバケ ツ 卜にタ イ ム ス タ ンブが 存在してないこ とをもって、 タ イ ムス タ ンプすなわち時間情報を伴わないことが されるよ うになつていてもよい c
図 1 ( c ) の場台も、 受信側においては、 順次与えられる各パケッ ト に含まれ るタ イ ム スタ ンプの変化若し く は関数に基づき、 送信側における元の所定周期 τ を推定するこ とができ る。 前述の通り、 タ イ ム ス タ ンプに基づく元の周期 τの推 定方法には種々あり 0 る力;、 最も典型的な方法は、 相前後する 2つのパケ ッ トに 含まれるタイ ムスタ ンプの差から次のような演算を行う こ とであるので、 この場 台についての演算式を示すと下記のようである。
Τ = { T S ( i ) - T S ( i - Γ ) } Z M … (式 3 )
ここで、 T S ( i )は、 前述と同様に、 今回送信されてきたパケ ッ トのタイ ムスタ ンプ値であり、 T S ( i— Γ )は、 その前に送信されてきた有効なタ イ ムスタ ンプ 値である。 従って、 今回送信されてきたパケッ ト において、 タイ ムスタ ンプの代 わりに上記 " v o i d " が含まれている場台は、 この演算は行われない。 また、 前回送信されてきたバケツ トのタ イ ム ス タ ンプ値が " V 0 i d " 以外の有効な値 を持っている場台は、 T S ( i— Γ )は、 前回送信されてきたパケッ トのタイムス タ ンプ値 T S ( i— 1 )に相当するが、 前回送信されてきたバケツ 卜においてタ イ ム スタ ンプの代わりに上記 " V o i d " が含まれていた場台は、 T S ( i— 1 ' )は、 前々回送信されてきたバケツ 卜のタ イ ムス タ ンプ値 T S Π— 2 )に相当するもので ある。 Mは、 前述の通り、 1 つのタ イ ムス タ ンブを付加するデータグルーブ内の データ数を示す定数である。
受信側においては、 こう して推定した元の (オ リ ジナル) 周期 Tに対応する周 期で、 受信したパケッ 卜に含まれるデータを順次再生読出しする。 かく して、 ォ リ ジナル周期 Tでのデータ再生を確実にする こ とができ る。 図 1 ( c ) の場台も、 送信側で最初のデータ (序数 0 ) が供給されたときから数えて 3番目のサー ビス 区間 S F 3のときに該 2番目のパケッ トが送信されるので、 受信側でデ一タ再生 が開始するのは、 送信側で最初のデータ (序数 0 ) が供給されたときから、 サー ビス区間 S Fの 3サイ ク ル経過後の、 4番目のサービス区間 S F 4のときとなる。 従って、 図 1 ( c ) の場合も、 図 1 ( a ) の場合に比べて、 パケッ ト送信の立上 りと受信側におけるデータ再生開始とが早くなつており 、 遅れの問題が改善され ていることが理解できる。 更に、 図〗 ( c ) の場台は、 受信側での時間情報の再 生処理について考慮すると、 上記式 3 に示されるように、 固定数 Mで割算を行う 楝成となつており、 上記式 2のよ うに可変数 Xで割算を行う棵成に比べて、 演算 処理の構成が簡単である、 という利点がある。 こ こで、 固定数 Mを、 4や 8のよ うな、 2のべき乗の数値とすれば、 式 3のディ ジタル割算を簡単なデータ シフ ト 処理によって行う ことができるで、 有利である。 従って、 図 1 ( c ) の例に従え ば、 少ないデータ量で時間情報を表現した場台において、 受信側での時間情報の 再生演算処理をできるだけ簡略化できるようにした非同期バゲッ トによるデータ 伝送方式を提供することができる、 という利点がある。
上記のように、 第 2の観点における図 1 ( c ) の例に従えば、 最も好ま しいデ 一夕伝送方式を提供することができることが理解できる。 そこで、 送信側におい て、 そのような最も好ま しい形式で非同期パケッ ト伝送を行う、 という IS点に立 つて、 この発明を実施するこ と もでき る。 すなわち、 そのよ όな送信方式の観点 に立てば、 この発明に係るデータ伝送方式は、 第 1 の周期の時系列的な配列を持 つ複数のデータを供給するステ ブと、 2以上の所定の定数からなる前記データ のグループ毎に該グループ內の 1 つのデータを特定し、 該特定されたデータの時 間位置を示す時間情報を付加するステ ップと、 前記第 1 の周期より も長い所定の 第 2 の周期毎に、 該第 2 の周期の 1 周期内で供袷された複数の前記データを 1 パ ケッ ト と して、 かつ、 該パケ ッ ト内のデータの中に前記時間情報が付加されたデ 一夕があれば該時間情報を該バケ ッ ト に含めて、 ネ ッ ト ワークを介して送信する ステ ッ プとを具備するこ とを特徴とするものである。 この作用、 効果は、 図 1 ( c ) の例に従つて上述した通りである。 勿論、 図 1 ( a ) や ( b ) の例において も、 送 ί言方式のみの観点に立つて発明を把握する ことが可能である。
更に、 この発明の第 1 の実施例についての好ま しい実施の形態について詳細に 説明する。
以下では、 最も好ま しい実施の形態と して、 上記第 2 の IS点における図 1 ( c ) の例に従う実施の形態についてその詳細を説明する。
図 2 は、 この発明に係るデータ伝送方式の一実施例の全体構成を示す概略ブ α ") ク図である。 送 ί言側 1 0 において、 デ一タ生成部 1 1 は、 所定のサ ンプリ ング 周期丁の時系列的な配列を持つ複数のテー タを順次生成し、 出力する ものて、 例 えば、 デ ィ ジ タ ルオーデ ィ オ ί言号の順次サ ンブルデー タ を出力する。 例えば、 デ 一タ生成部 1 1 は、 C D (コ ンパク ト デ ィ ス ク) フ' -レ イ ヤーのよ うなオーディ オ 再生装置を含んでいてもよいし、 あるいは楽音サ ンブルテ一タをリアルタ イムで 合成する楽音合成装置のようなものを含んでいてもよい。 データ生成部 1 1 から 出力されるデータのサンプリ ング周期 Tは、 そのデータ ソースに応じて、適宜可 変されるよ 0になっていてよい。
データ生成部 1 1 から出力されたデータは、 その時系列順にデータバッ ファ 1 2に一時記憶される。 データ バッ フ ァ 1 2 には入出力非同期のパ ッ フ ァ レ ジス タ を用いる。 タ イ マ 1 3 は、 タ イ ム ス タ ンプデ一タすなわち時間情報を作成する も のであり、 所定のク ロ ッ クをカウ ン 卜する ラ ンニ ングカウ ンタのようなものを含 んでいてよい。 ネ ッ ト ワーク処理部 1 4 は、 所定の送信割込み周期毎に、 データ バッ フ ァ 1 2 に一時記憶したデータを基に して 1 パケ ッ トを様成する複数 Xのデ ータを送信バッ フ ァ T B F内に 1 まとめに揃える処理と、 所定数 Mのデータ毎に 1 つのデータを特定し、 該特定されたデータの時間位置を示すタイ ムスタ ンプデ 一タを付加する処理と、 送信バッ ファ T B F内に揃えられた複数 Xのデータと該 データの中のいずれかに対して付加されたタイ ムス タ ンプデー夕 とを 1 バケツ ト と して、 ネツ トワーク 3 0を介して受信側 2 0 に送信する処理とを行う。 送信割 込み周期は、 パケ ッ 卜のサー ビス区間 S Fに対応しており、 データのサ ンプリ ン グ周期 Tより長く 設定され、 複数 Xのデータを 1 パケ ッ トに含ませることができ る。 しかし、 前述の理由て、 1 パケッ ト中のデータ数 X は可変である。
受信側 2 0では、 ネ ッ ト ワーク処理部 2 4 においてネ ッ トワーク 3 0を介して 送信されてきたバケ ツ トを受信し、 受信したパケ ッ ト に含まれる複数 Xのデータ をその時系列順にデータバッ フ ァ 2 2 に一時記憶する。 データバッ フ ァ 2 2には、 複数記 tiステージを有する F I F 0のよう な入出力非同期のバ ッ ファ レジスタを 使用する とよい。 ク ロ ッ ク生成部 2 3 は、 受信したパケ ッ トに含まれるタ イム ス タ ンプデータに基づき、 送信側 1 0におけるデータ生成部 1 1 から供給されたデ ータのオ リ ジナルのサンブリ ング周期 Tを再現するものである。 例えば、 前記式 3 のよう な演算を行って、 ォ リ ジナルのサ ンプリ ング周期 Tを推定的に算出し、 算出した周期 Tに対応するク ロ ッ ク信号を生成する。 データ利用部 2 1 は、 ク o ·'/ ク生成部 2 3 から与えられる再現されたサンブ リ ン グ周期 Tに従い、 データバ ッ フ ァ 2 2に一時記億されたデー タを順次再生読出し、 これを適宜利用する。 再 生読出し したデータを如何なる形態で利用するかは、 適宜であってよい。 例えば、 そのまま D— A変換してからス ピーカ等から発音するよ う にしてもよいし、 ある いは、 エフュ ク ト等の処理を施してからス ビ一力等から発音する若し く は処理済 みのデータを外部に送出する等、 任意であつてよい。
送信側 1 0及び受信側 2 0では、 マイ ク ロコ ン ビュ一タ等の制御の下でソフ ト ゥユアプログラムを実行することにより、 上記各部での処理を制御するよ うにな つている。 そのための処理フ ローの例を次に示す。
図 3 は、 送信側 1 0で行われる 「送信準備処理」 の一例を略示するものである。 この 「送信準備処理」 は、 主に、 ネ ッ ト ワーク処理部 1 4 が受け持つ処理であり、 データ生成部 1 1 の処理とデータバッ フ ァ 1 2 への入力処理は含まれていない。 例えば、 この 「送信準備処理」 は、 送信側 1 0 でのメ イ ンルーチ ンの過程で実行 される。
まず、 ステップ S 1 では、 デ一タバッ フ ァ 1 2の記憶内容をスキヤ ンし、 新た なデータがデータバッ フ ァ 1 2 に入力されたかどうかを調べる。 新たなデータが データノ、ッ フ ァ 1 2 に入力されたならば、 Y E S であり、 次のステッ プ S 2に行 く。 N 0ならば、 リター ンする。
ステ ッ プ S 2では、 序数レジス タ 0 R D Rの内容を、 所定数 Mで割って、 その 余りが 0 であるかを賙ベる。 序数レ ジス タ O R D Rは、 前ステ ップ S 1 でデータ バッ フ ァ 1 2 に入力されたこ とが検出されたデータの序数を示すデータをス ト ア する ものであり、 最初は、 図示しない初期設定処理によ り 、 序数 0 にセツ トされ ており、 以後、 データバッ フ ァ 1 2に新データが入力される毎に、 後出のステツ プ S 5の処理によつて、 イ ンク リ メ ン トされる。 所定数 Mは、 前述の通り、 1 つ のタ イ ム ス タ ンプを付加すベき 1 デ一タ グルーブのデ一タ数を示す定数であり、 4又は 8等の 2 のべき乗の値とすれば、 割算を簡略化でき るので好ま しい。
序数レジスタ 0 R D Rの内容を、 所定数 Mで割った、 その余りが 0であるとい う こ と、 つま り、 ステッ プ S 2の判定が Y E Sであるというこ とは、 序数レジ ス タ 0 R D Rの内容に対応する現データ (データバッ フ ァ 1 2 に今入力されたばか りの新しいデータ) 力;、 タイ ムス タ ンフを付加すべきデータであるこ とを示して いる。
そこで、 ステッ プ S 2が Y E Sであれば、 ステ ップ S 3 に行き、 タ イ マ 1 3の 現在値 (これは、 データ生成部 1 1 からの 1 サンプルデータがデータバッ ファ 1 2に到着 Z入力した時刻を略示している) を送信側タィ ム スタ ンプレ ジス タ T S t にス トアし、 その後ステッ プ S 4に行く 。
こ う して、 ステ ップ S 2の処理によつてタイ ムスタ ンブを付加すべき 1 つのデ 一夕が特定され、 ステッ プ S 3 の処理によつて該特定データに付加するタィム ス 夕ンプデータすなわち時間情報が決定 生成され、 レ ジス タ T S t にレ ジス ト さ れる。
一方、 ステップ S 2が N 0であれば、 ステップ S 4 にジャンプし、 タイ ムスタ ンブデ一夕の レ ジス ト は行われない。
ステップ S 4では、 データバッファ 1 2に入力された新データ (すなわち、 序 数レ ジス タ O R D Rの内容に対応する現データ) を該バッ フ ァ 1 2から取り出し て、 所定の送信バッファ T B Fに格納する。
次のステツ ブ S 5では、 序数レ ジス タ O R D Rの内容を 1だけイ ンク リ メ ン ト する。
その後、 メ イ ンルーチ ンにリターンする。 そして、 メ イ ンルーチ ンの過程で再 び図 3の 「送信 儺処理」 を行う。 こ う して、 図 3の 「送信準備処理」 が緣り返 される。 この 「送信準備処理」 を繰り返す過程で、 順次供給されたいくつかのデ ータが、 前記送信バッ フ ァ T B Fに順次格枘される。 この送信バッ フ ァ T B Fに 格納されたい く つか (一般的には複数 X ) のデータは、 次に述べる 「送信割込処 理」 によ って 1 パケ ッ 卜 と して送信される。
図 4は、 送信側 1 0で行われる 「送信割込処理」 の一例を略示するものであり、 図 3 の処理に対する割込み処理と して実行される。 この 「送信割込処理」 は、 所 定の送信割込み周期に従って規則的な割込み間隔で実行される。 この送信割込み 周期は、 例えば、 パケッ トの 1 サー ビス区間 S Fに対応しており、 一般に、 送信 するデータのサ ンプリ ング周期 Tより長い。
送信割込みがかかると 、 まず、 ステ ッ プ S 6では、 送信側タ イ ムス タ ンプレ ジ ス タ T S tに レ ジ ス ト されている タ イ ム ス タ ンプデー タを、 タ イ ム ス タ ンプ情報 " I M E S T AM P " と して送信セ ッ ト し、 かつ、 前記送信バッ フ ァ T B F に格納されているデータ の数 Xを数えてこれをサ ンプル数 X " S AM P L E X " として送信セ ッ ト し、 かつ、 序数レ ジス タ 0 R D Rの内容から上記サンプル数 X "S AM P L E X " を引いた値 (0 R D R— " S A M P L E x " ) をバケツ ト先頭サ ンプル序数 " S AM P L E O R D E R" と して送信セッ 卜する。 この バケ ツ ト先頭サ ンブル序数 " S AMP L E O R D E R" は、 送信する 1 パケ ッ トに含まれる複数のデータのうち時系列順序が先頭のデ一タのサンプル序数を示 す。 序数レジスタ 0 R D Rの現内容が、 送信する 1 パケッ トに含まれる複数のデ —夕のうち時系列順序が最後のデータの次のサンブル序数を示しているので、 こ れから該パケッ トに含まれるデータのサ ンプル数 " S AM P L E X " を引いた ものが、 該パケ ッ トにおける先頭のデータのサンプル序数を示すことになる。 次のステップ S 7では、 前記送信バッ フ ァ T B Fに格納されている複数 Xのデ ータ と、 前ステッ プ S 6で送信セ ッ ト した各情報、 すなわちタ イ ムスタ ンブ情報 "T I M E S T A M P " 、 サ ンプル数 X " S A M P L E X " 、 パケ ッ ト先頭 サンブル序数 " S AM P L E O R D E R" とを、 1 バケ ツ ト と してバケ ツ ト作 成し、 該パケ ッ トをネ ッ ト ワーク 3 0を介して送信する。 なお、 ネッ ト ワーク 3 0を介した受信側 2 0 と の間の実際の具体的な通信作業は、 通信イ ン タ フ ユース を介して行われるこ とになるので、 このス テ ッ プ S 7では図示しない通信イ ンタ フ ェ ースに対してバケ ツ トを送出する こ とからなる。 なお、 送信バッ フ ァ T B F の格納データを送出した後に該バッ フ ァ T B Fをク リ アするものとする。
次のス テ ッ プ S 8て、 送 ί言側タ イ ム ス タ ンプレ ジス タ T S t に空データ " V 0 i d " をセ ッ ト し、 その後 リ ター ンする。 次のパケ ッ トが有効なタ イ ム ス タ ンプ を伴う場合は、 図 3のス テ ッ プ S 3の処理を経由する こ とによ つて該レ ジ スタ T S t の内容が有効なタィ ムス タ ンブ値によ つて更新される。 他方、 次のバケツ ト が有効なタ イ ムス タ ンプを伴わない場台は、 図 3 のス テ ッ プ S 3の処理を経由す るこ とがなく 、 よって、 該レ ジス タ T S t の内容は更新されないまま空データ " v o i d " を保持して、 次の 「送信割込み処理」 を迎える。 そのよ う な埸台は、 図 4のス テ ッ プ S 6において、 タ イ ム ス タ ンプ情報 " T I M E S T AM P" と して空データ " V o i d " が送信セ ッ ト される こ とになる。
例えば、 M= 4である と して、 図 1 ( c ) の 1段目及び 2段目を参照しながら、 図 3及び図 4の動作例について説明する。
最初に、 序数 0のデータがデータバッ フ ァ 1 2に取り込まれたとき、 レ ジス タ 0 R D Rの内容が 0である力、ら、 ステ ッ プ S 2が Y E Sとなり、 ステ ップ S 3に 行き、 タ イ マ 1 3の現在値 (図 1 では便宜上最初は 「 1」 と しているが、 これに 限らないのは勿論である) を送信側タ ィ ム スタ ンブレ ジスタ T S tにス ト アする。 この序数 0のデー タは送信バ ッ フ ァ T B Fに格納され ( S 4 ) 、 序数レ ジス タ 0 R D Rの値が增数されて 1 となる ( S 5 )
次に序数 1 のデータがデ一タバッ フ ァ 1 2に取り込まれたとき、 レ ジス タ 0 R D Rの内容は 1 であるから、 ステ ップ S 2が N 0となり、 ステップ S 3をジヤ ン プしてステッ プ S 4 , S 5を行い、 この序数 1 のデータは送信バッフ ァ T B Fに 格納され、 序数レジスタ O R D Rの値が增数されて 2 となる。
次に序数 2 のデータがデータバッフ ァ 1 2に取り込まれたとき も同様であり、 ステ ッ プ S 3をジャ ンプしてステ ップ S 4 , S 5 を行い、 この序数 2のデ一タカ ί 送信バッ フ ァ T B Fに格納され、 序数レジスタ 0 R D Rの値が增数されて 3 とな る
こ う して、 最初のサー ビス区間 S F 1 の間に序数 0, 1 , 2の 3つのデ一タカ ϊ 供給され、 これらのデータが送信バッ フ ァ T B Fに格納される。 該サー ビス区間 S F 1 の終わりで (又は次のサ一 ビス区間 S F 2の始ま りで) 、 図 4の 「送信割 込処理」 が行われる。 ステッ プ S 6の処理によ つて、 タ イ ムスタ ンブ情報 "T I ME S A M P " と してレ ジス タ T S t の 「 1 _: が送信セッ 卜 され、 サ ンプル 数 X " S AM P L E X " と して 「 3」 が送信セ ッ ト され、 バケ ツ ト先頭サ ンプ ル序数 " S AMP L E O R D E R" と して 「 0」 ( 3— 3 = 0 ) が送信セ ッ ト される。 そして、 ステッ プ S 7の処理に基づき、 2番目のサー ビス区間 S F 2に おける適宜の時点て、 これらの情報と送信バッ フ ァ T B F内の序数 0 , 1 , 2の 3つのデータ とが 1 パケ ッ ト と して送信されるこ とになる。
2番目のサー ビス区間 S F 2においては、 序数 3 , 4の 2つのデータが供給さ れる。 序数 3のデータが供袷されたと きは、 ステ ップ S 2 は N 0であり、 序数 3 のデータが送信バ ッ フ ァ T B Fに格納され ( S 4 ) 、 序数レ ジ ス タ O R D Rの値 が增数されて 4 となる ( S 5 ) 。 次に序数 4のデータが供給されたと きは、 ステ ップ S 2は Y E S となり、 ステッ プ S 3に行き、 タイ マ 1 3の現在値 (図 1 では 「 1 7」 ) を送信側タィ ムスタ ンプレジス夕 T S tにス トアする。 また、 この序 数 4のデータが送信バッ ファ T B Fに格納され ( S 4 ) 、 序数レジス タ O R D R の値が增数されて 5となる ( S 5 ) 。
2番目のサービス区間 S F 2が終わって、 図 4の 「送信割込処理」 が行われる と、 ステップ S 6の処理によつて、 タ イムスタ ンブ情報 "T I M E S T A P" と してレジスタ T S の 「 1 7」 が送信セ ッ 卜 され、 サンプル数 X " S A M P L E X " と して 「 2」 が送信セッ トされ、 パケ ッ ト先頭サ ンブル序数 " S AM P L E O R D E R" と して 「 3」 (5 — 2 = 3 ) が送信セ ッ 卜 される。 そ して、 ステ ップ S 7 の処理に基づき、 3番目のサー ビス区間 S F 3における適宜の時点 で、 これらの情報と送信バッ フ ァ T B F內の序数 3 , 4の 2つのデータとが 1 パ ケッ ト と して送信される ことになる。 また、 ステ ッ プ S 8では、 レジス タ T S t に空デー夕 " V o i d " がセ ッ ト される。
3番目のサー ビス区間 S F 3 においては、 序数 5 , 6 の 2つのデータが供給さ れる。 序数 5 のデータが供袷されたと きは、 ステ ップ S 2 は N 0であり、 序数 5 のデータが送信バ ッ フ ァ T B F に格納され ( S 4 ) 、 序数レジス タ 0 R D Rの値 が增数されて 6 となる ( S 5 ) 。 次に序数 6のデータが供給されたと きも、 ス テ ッブ S 2 は N 0であり、 序数 6 のデータが送信バ ソ フ ァ T B Fに格納され、 序数 レ ジス タ O R D Rの値が增数されて 7 とな るだけである。 結局、 この 3番目のサ 一ビス区間 S F においては、 ス テ ッ プ S 3 を経由する こ とな く 、 レ ジ ス タ T S t には空データ " V o i d " を保持したまま となる。
従って、 次の 「送信割込処理」 においては、 タ イムスタ ンプ情報 " T I M E S T A M P " と して空データ " v o i d " が送信セッ 卜 され、 サ ンプル数 x " S A M P L E x " と して 「 2 」 が送信セ .', 卜され、 バケ ツ ト先頭サンプル序数 " S A M P L E O R D E R" と して 「 5 」 ( 7 — 2 = 5 ) が送信セッ ト されるこ とになる。 そ して、 これらの情報と送信バッフ ァ T B F内の序数 5 , 6の 2つの データ とが 1 パケ ッ ト と して送信されるこ とになる。
以下、 同様に動作し、 図 1 ( c ) の 1段目に示すような時系列的デー タ に応じ て 2段目に示すよ όな内容のパケ ッ トが送信されるこ とになる。
図 5 は、 受信側 2 0で行われる 「受信処理」 の一例を略示するものである。 こ の 「受信処理」 は、 主に、 ネ フ ト ヮーク処理部 2 4 とク ロ ック生成部 2 3 が受け 持つ処理について示されている。
この 「受信処理」 は、 ネ ッ ト ワーク 3 0 から与えられる 1 パケ ッ ト情報を受信 側 2 0が受信する毎に実行される。
まず、 ステ ップ S I 1 では、 ネ ッ ト ワーク 3 0 を介して受信した 1 パケ ッ トに 含まれる各情報のうち、 パケ ッ ト先頭サンプル序数 " S A M P L E O R D E R' をレ ジスタ j に格納し、 サンプル数 X " S A M P L E X " をレジスタ Xに格納 する。 また、 ア ッ プデー ト ク ロ ッ ク レジスタ u p d a t e C L O C Kに偽値 F A L S Eをセ ッ 卜する。 こ のア ッ プデー ト ク ロ ッ ク レ ジス タ u p d a t e C L O C Kに、 真値 Τ RU Eがセ ッ ト されている と き、 ク ロ ッ ク周波数の更新を指示し、 偽値 F A L S Eをセッ 卜 されているときはクロ ッ ク周波数の更新を指示しない。
次に、 ステップ S 1 2では、 変数レ ジスタ i を初期値 0にセ ッ 卜する。
次のステッ プ S 1 3では、 ネ ッ ト ワーク 3 0を介して受信した 1 パケッ トに含 まれる複数 X のデータのうち変数レ ジス タ i によ って指示される順位の 1 つのデ 一夕 D A T A (i) をデータバッ フ ァ 2 2に転送する。
次のス テ ッ プ S 1 4では、 レ ジス タ j の内容 (すなわちパケ ッ ト先頭サ ンブル 序数 "S AM P L E O R D E R" ) に変数レジスタ i の現在値を加算した値を、 前記所定数 Mで割って、 その余りが 0であるかを調べる。 すなわち、 前ス テ ッ プ S 1 3でデータバ ッ フ ァ 2 2 に書き込んだデ一タ (こ の序数は Γ j 十 i 」 である) が、 タ イ ムス タ ンブを付加した前記特定のデータ に該当するか否かを調べる。 前 ステッ プ S 1 3でデータバッ フ ァ 2 2に害き込んだデータが、 前記特定のデータ に該当する場台は、 該データ の序数 j + i が所定数 Mで割り切れるため、 余りが 0とな り 、 ステ ッ プ S 1 4では Y E S と判定される。 その埸台は、 ステ ッ プ S 1 5〜 S 1 8のルー トを経由してからステ ッ プ S 1 9に行く。 N Oの場台は、 ステ ッブ S 1 5〜 S 1 8のルー トをジャ ンプしてステ ッ プ S 1 9に行く。
ス テ ッ プ S 1 5では、 受信側タ イ ム ス タ ンプレ ジス タ丁 S rの内容が空データ " V o i d " であるか否かを調べる。 図示していない初期設定処理により、 該レ ジスタ T S rの内容が空データ ノ' V o i d " に初期設定されるよ όになっており、 その後に、 次のステップ S 1 6を行う ことにより、 受信した 1 パケッ トに含まれ るタ イ ムスタ ンプ情報 "T I M E S TAMP" を該レ ジスタ T S r にロー ドす る。 従って、 このステッ プ S 1 6 は、 最初のタィ ム スタ ンプ惰報 "T I M E S 丁 AMP" をレジスタ T S r にロー ドするための処理である。 以後は、 ステッ プ S 1 5は NOと判定され、 専らステッ プ S 1 7 , S 1 8のルー トを通って処理さ れる。
ステッ プ S 1 7では、 前記式 3 に相当する演算を行つて、 オ リ ジナルのサンプ リ ング周期 Tを算出 Z推定する。 すなわち、 今回受信したバケ ツ トに含まれるタ ィム スタ ンブ情報 " T I M E S T A P" (前記式 3の T S (i) に対応) から 受信側タィ ムスタ ンプレジスタ T S rの内容 (前回又は前々回受信したパケッ ト に含まれていたタ イ ム ス タ ンプ情報であって、 前記式 3の T S (i— Γ ) に対応) を引き算し、 1 つのタィ ムス タ ンプを付加するデータ グループ内のデータ数を示 す定数 M (例えば 4 ) で割算する。 その商が、 ォ リ ジナルのサ ンプリ ング周期 T を推定するデータ と して レ ジ ス ト される。
次のステッ プ S 1 8では、 今回受信したパケ ッ トに含まれるタイ ムスタ ンブ情 報 " T I ME S TAM P" を受信側タ イ ムス タ ンプレ ジ ス タ T S r にロー ド し、 該レジスタ T S r の内容を更新し、 かつ、 ア ツプデ一 ト ク ロ ッ ク レジスタ u p d a t e C L O C Kに、 真値 T R U Eをセ ッ 卜する。
ス テ ッ プ S 1 9では、 変数レ ジスタ i の値を 1 たけ增数する。 次のステ ッ プ S 2 0では、 增数された変数レ ジ ス タ i の値がレ ジ ス 夕 Xに格納されている当該パ ケ ッ ト中のデータ数 X に等し く なつたか否かを調べる。 N 0であれば、 ステッ プ S 1 3に戻り、 增数された変数レジスタ i の値に関して、 前記ステッ プ S 1 3〜 S 1 8の処理を繰り返す。
ス テ ッ プ S 2 0が Y E Sとなる と、 ステ ッ プ S 2 1 に行き、 ア ッ プデー ト ク ロ ック レ ジス タ u p d a t e C L O C Kの内容が真値 T R U Eであるこ とを条件に、 前記ステ ップ S 1 7で算出されたオ リ ジナルのサ ンプリ ソグ周期 Tに従って、 受 信側 2 0 におけるサ ンプ リ ン グク ロ ッ ク周波数を、 こ の周期 Tに従つて、 設定す るク ロ ッ ク同期化処理を行う。 すなわち、 受 ί言側 2 0におけるサ ンプ リ ン グク ロ ッ ク周波数がステ ッ ブ S 1 7での演算結果 Τに応 じて設定若し く は更新される こ とになる。 その後、 リ ターン して、 この 「受信処理」 を終了する。 なお、 1 パケ ッ 卜には 1個のタ イムスタ ンプ情報しか含まないようにしているので、 一旦、 ス テツブ S 1 7 , S 1 8のルー トを通った後は、 ス テ ッ プ S 1 3 ~ S 2 0の処理を 緣り返すこ とは不要である。 従って、 ステ ッ プ S 1 8の後はス テ ッ プ S 2 1 に ジ ヤ ンブさせるよ う にフ ロ ーを変更してもよい。
次に、 M- 4であると して、 図 1 ( c ) の 2段目及び 3段目を参照しながら、 図 5の動作例について説明する。
2番目のサー ビス区間 S F 2で、 序数 0 , 1 , 2のデータを含む最初のパケ ッ トの情報を受信すると、 ステ ッ プ S I 1では、 j = 0、 X = 3 にセッ ト される。 この場合、 j = 0 、 i = 0のとき、 ステ ッ プ S I 4が Y E Sとなる。 T S rには " v o i d " が初期設定されているので、 次のステッ プ S 1 5が Y E Sとなり、 ステ ップ S 1 6で、 今回受信したパケ ッ トに含まれるタ イ ムス タ ンブ情報 "T I ME S TAMP" = 「 1」 力 レ ジ ス タ T S r にセ ッ 卜される。 やがて、 ステ ッブ S 1 3〜 S 2 0の処理を繰り返した後、 ステ ップ S 2 1 に行く。 この埸台は、 アッ プデー ト ク ロ ック レジスタ u p d a t e C L O C Kの内容が偽値 F A L S E にセ ッ ト されたままなのて、 受信側 2 0におけるサンプリ ングク ロ ッ ク周波数の 設定は行われない。 従って、 データバッ フ ァ 2 2 に記億したデータの再生読み出 しは、 まだスター ト されない。
3番目のサー ビス区間 S F 3で、 序数 3, 4のデータを含む 2番目のパケツ ト の情報を受信する と、 ステッ プ S I 1 では、 j = 3、 X = 2にセッ ト される。 こ の場台、 j = 3、 i = l のと き、 ステ ッ プ S 1 4 が Y E S となる。 レ ジス タ T S rには前回受信したパケ ッ ト に含まれるタ イ ムス タ ンプ情報 "T I M E S T A MP" = 「 1 J がセッ ト されているので、 次のステッ プ S 1 5は N 0と判断され、 ステ ッ プ S 1 7 に行く。 この場台、 今回受信したパケ ッ ト に含まれるタ イ ムス タ ンブ情報 "T I M E S TAM P" は 「 1 7」 であるから、 ステップ S 1 7の演 算では、 T = ( 1 7 - 1 ) Z 4 = 4が得られる。 次のステップ S 1 8では、 " T I M E S T AM P" の 「 1 7」 をレ ジス タ T S rにセッ ト し、 かつ、 u p d a t e C L O C Kに真値 T R U Eをセ ッ 卜する。 従って、 その後のステ ップ S 2 1 では上記周期 Tに従って受信側 2 0におけ るサ ンプリ ングク口 ッ ク周波数の設定 を行なう。 これにより、 データバッ フ ァ 2 2に記憶したデータの再生読み出しが 可能となる。 図 1 ( c ) では、 次のサービス区間 S F 4の始ま りから、 周期 Tに 従うデータの再生読み出しが行われるよう に図示されている。 しかし、 これに限 らず、 サー ビス区間 S F 3の途中であっても、 ス テ ッ プ S 2 1 での処理を終了し 次第、 データバッ ファ 2 2に記憶したデータの再生読み出しを開始するよ うにし てもよい。
4番目のサービス区間 S F 4で、 序数 5 , 6のデータを含む 3番目のパケッ ト の情報を受信すると、 ステッ プ S 1 1 では、 j - 5、 X = 2にセッ ト される。 こ の場台、 変数レ ジスタ i の値は、 最初は 0、 その次は 1 にセッ 卜 される。 従って、 ステ ップ S I 4では、 j + i = 5 + 0 = 5 の場台と、 j + i = 5 + 1 = 6の場台 の両方について、 判定を行うが、 そのいずれの場台も判定結果は N Oであり、 ス テツプ S 1 7 , S 1 8のルー トは通らない。 従って、 ステ ップ S 1 7でのオリ ジ ナル周期 Tの算出演算は行われず、 レジス タ T S rには前回受信したパケッ トに 含まれていたタィ ムスタ ンブ惰報 "T I M E S TAM P" の 「 1 7」 が保持さ れる。 従って、 ステップ S 2 1 におけるサンプリ ングク ロ ッ ク周波数の更新処理 も行われず、 前回計算した周期 Tに従うクロック周波数を維持して、 データバッ ファ 2 2 に記憶したデータの再生読み出しが铳行される。 このように、 パケッ ト に含まれるタイムスタ ンプ情報 "T I ME S T A P" が空データ " V o i d " の場合は、 サ ンプリ ングク ロ ッ ク周波数の更新処理は行われないようになってい る D
5番目のサービス区間 S F 5て、 序数 7 , 8のデータを含む 4番目のバケツ ト の情報を受信すると、 ステッ プ S I 1 では、 j = 7、 X - 2にセ ッ ト される。 こ の場台も、 変数レ ジスタ i の値は、 最初は 0、 その次は 1 にセ ッ トされる。 ステ ッブ S 1 4では、 j + i = 7 + l = 8の場台、 Y E S と判定する。 そ して、 ステ ッブ S 1 7に行き、 今回受信したパケ ッ トに含まれるタイ ムスタ ンプ惰報 "T I ME S TAMP" の 「 3 3」 と、 レジス タ T S rにス ト アされている前々回受 信したパケッ トに含まれていたタ イ ムスタ ンプ情報の 「 1 7」 とを使用して、 T = ( 3 3 - 1 7 ) .' 4 = 4の演算がなされる。 次のステ ッ プ S 1 8では、 " T I ME S T AMP" の 「 3 3」 をレジスタ T S r にセ ッ ト し、 かつ、 u p d a t e C L O C Kに真値 T R U Eをセッ トする。 従って、 その後のステップ S 2 1 で は上記周期 Tに従って受信側 2 0におけるサンプ リ ングク ロッ ク周波数の更新を 行なう。
以下、 同様に動作し、 図 1 ( c ) の 2段目に示すような内容のパケ トの受信 に応じて、 3段目に示すようなオ リ ジナル周期 Tでの時系列的データの再生読み 出しが行われる。
なお、 上 S己の設例では、 タ イ ムスタ ンプ惰報の数値を単純化して示しているの で、 演算の結果得られる周期 Tは一定の数値 4であるが、 通常は、 各数値の分解 能の設定に応じて演算結果値 Tはもっ と複雑な値をとる。 受信側2 0においては、 この演算結果値 Tに応じて、 そのサンプリ ングクロッ ク周波数を絶えず調整する よう同期化制御される。 このようにして、 所定のデータ グループ毎に送信される タ イ ムス タ ンプ情報によ つて、 送信側 1 0 と受信側 2 0 のサ ンプリ ングク ロ ッ ク 周波数が絶えず同期化されるように制御される。
なお、 上記実施例における所定の定数 Μは、 1 つのパケッ ト生成周期 (つまり 1サー ビ ス区間 S F ) において、 2以上のデータにタイム ス夕ンブを付加するこ とのないような値、 つま り 1 パケ ッ ト生成周期内に供袷されるデータ数の最大値 (図 1 の伊)では 「 3」 ) より も大きな値、 であることが望ましく、 また、 受信側 におけるサ ンプリ ング周期 Τの再現分解能を高めるためには、 そのような値の中 の最小値であることが望ましい。 更に、 Μを 2のべき乗の値とすれば、 割算演算 を簡単化できるので、 好ま しい。
と こ ろで、 送信側と受信側のサ ンプ リ ン グク 口 ッ ク周波数を同期させるために は、 最も単純には、 データ送信の冒頭において送信側から受信側に対してサ ンプ リ ングク D ッ ク周波数を指示する情報を与え、 受信側において該情報に対応する サ ンプリ ングク ロ ック周波数を発振するよ うにク oッ ク分周比を設定するよ う に すればよいはずである。 しかし、 発振源と して使用する水晶発振子の個体差によ つて、 送信側と受信側の実際のサンブ リ ングク ロ ッ ク周波数に微妙なずれが生じ ることがあるので、 長時間にわたる再生処理においては不都台が生じて来るとい う問題がある。 すなわち、 ク D ツ ク発振出力に基づく データ再生読み出し技術に おいては、 発振源として使用する水晶発振子の発振出力を分周して所望の周期の サ ンプリ ングクロ ックを作成すること になるか、 送信側のデータ読み出しに使用 する水晶発振子と、 受信側のデータ読み出しに使用する水晶発振子との個体差に よって、 送受信間で同じ分周比に設定したとしても、 送信側と受信側の実際のサ ンプリ ングク ロ ッ ク周波数に微妙なずれが生じることがある。 この微妙なずれは、 長時間にわたる連統的なオーディォ再生処理等においては累積されてしまい、 遂 には再生夕ィ ミ ングの顕著なずれをもたらすことになる。
例えば、 一般に、 異なるシステム間で情報を送受信する場合は、 受信側にバッ ファを設け、 データ転送のタイ ミ ングずれを吸収するようにしているが、 上記の ように送受信間のサンプリ ン グク ロッ ク周波数に微妙なずれがある場合は、 受信 側バッ フ ァがオーバ一フ ロー した り (受信側のク 口 ッ ク周波数が相対的に遅く な つた場台) 、 ア ンダーフ ロー した り (受信側のク ロ ッ ク周波数が相対的に速く な つた場合) するこ とがある。 そのよう な場台は、 正常なデータ送受信を行う こと ができな く なるので、 好ま し く ない。 これに対して、 この発明のように、 送信す るデータ に時間情報を付加するこ とによ り、 送信側と受信側のサ ンブ リ ン グク D ック周波数が絶えず同期化されるように制御する方式では、 そのような問題が起 こらないので、 より好ま しいものである。
なお、 上記実施例では、 受 ί言側 2 0 において、 ステ ッ プ S 1 7 で演算した周期 Τに基づき、 データバッ ファ 2 2 の再生読み出し制御用のサンブリ ン グク ロ ッ ク 周波数を設定するように している力;、 時間情報に基づく再生読み出し制御の態様 はこれに限らず、 適宜に設計 してよい c 例えば、 タ イ ム ス タ ンプ情報が付加され ていないデータ に対して、 それぞれ固有の時間情報を付加する処理を行い、 各デ ータ毎の固有の時間情報を参照して再生読み出しを行うよ うにしてもよい。
また、 データ伝送に先立ち、 基本的なサ ンプ リ ング周期 Tを示すデータを送信 し、 受信側 2 0では、 最初は、 この送信されてきたデータに対応するサンプリ ン グ周期 Tでデータ再生読み出しを開始するように してもよい。 そのよ うにすれば、 受信側 2 0 におけるデータ再生読み出しの立上り を上記実施例に比べて 1 サー ビ ス区間だけ早める ことができる。
また、 本来のデータの送信に先立って、 いく つかのダ ミ ーデータをタ イ ムス タ ンプの初期値を伴って送信するよ う に して もよい。 その場台、 受信側 2 0 におけ るデータ再生読み出しの開始は、 ダミ ーデータをカ ツ 卜 して、 実際のデータから 開始するようにする。 例えば、 図 1 ( C ) の場台、 序数 0, 1, 2のデータがダ ミーデータであるとすると、 その 3段目に示された受信側再生読み出しにおいて は、 序数 3のデータ (実際のデータの先頭) から読み出し開始するよ うにする。 そのよう にしても、 受信側 2 0 における実際のデータの再生読み出し開始を上記 実施例に比べて 1 サー ビス区間だけ早めることができる。
なお、 図 1 ( b ) に示したよ うなデータ伝送方式を実施する場合は、 概ね、 図 3 の ステ ッ プ S 2 , S 3 を省略し、 図 4 のステ ッ プ S 6 において 「 T I M E S T A M P ― T S t 」 の代わり に、 Γ Τ Ι Μ Ε S T A M P - タイ マ 1 3 の現在値」 を行い、 かつ、 図 5のステ ッ プ S 1 4 , S 1 7の所定の定数 Mの代わ り に、 可変の所定数 X ( レジス タ Xの値) を使用すればよい。
また、 図 1 ( a ) に示したようなデータ伝送方式を実施する埸台は、 概ね、 図 3のステ ップ S 2 、 図 5のステップ S 1 4 , S 1 7の所定の定数 Mの代わりに、 1 パケッ ト当りのデータ数を示す固定数 Nを使用し、 かつ、 図 4の 「送信割込処 理」 の開始時に、 送信バッ フ ァ T B F内のデータ数 X が N以上であるかをチュ ッ クするステップを設け、 NOであれば割込処理を終了し、 Y E Sであれば割込処 理を铳行するようにする。 そ して、 続行時においては、 ス テ ッ プ S 6において 「 サ ンブル数 X " S AMP L E x " J と して所定数 Nを送信セッ ト し、 ス テ ッ プ S 7 において送信バッ フ ァ T B Fのデータ の όち先行する Ν個のデータを 1 パケ ッ ト と して形成し、 残りのデ一タがあればそれらは送信パッフ ァ T B Fに残して おく ようにする。
図 6は、 送信側 1 0及び受信側 2 0のどらちにでも使用できる装置 (例えばパ 一ソ ナルコ ン ピュ ータ) のハー ドゥ ュ ァ構成を示す。
図 6の シス テムでは、 メ イ ン制御部として C P U (中央処理部) 3 1 を使用し、 この C P U 3 1 の制御の下て、 図 3 , 図 4 に示されたような送信処理のプログラ ムを実行し、 また、 図 5 に示されたような受信処理のプログラムを実行する。 C P U 3 1 には、 R OM ( リ ー ドオ ン リ ー メ モ リ ) 3 2 , R AM ( ラ ン ダムァク セ ス メ モ リ ) 3 3 , ネ ッ ト ワー ク 】 0 (入出力装置) 3 4 , タ イ マ 3 5 , マウ ス 3 6 , キーボー ド 3 7 , ディ ス プ レイ 3 8 , ハー ドデ ィ ス ク 3 9 , D A C (タ' ィ レク ト メ モ リ ア クセス コ ン ト ローラ) 4 0, サ ウ ン ド I /O (入出力装置) 4 1 , サ ンプリ ングク ロ ッ ク発生回路 4 2 , 外部メ モ リ ドラ イ ブ 4 3等が、 データ 及びァ ドレスバス 4 4を介して接铳されている。
サウ ン ド 1 Z 04 1 は、 C O D E Cと呼ばれるサゥ ン ド入出力装置であつて、 その内部にはディ ジタル./アナ πグ変換器 (D A C) 、 アナロ グ ,デ ィ ジタル変 換器 ( A D C ) 、 AD Cに接続された入力用の F I F O (先入れ先出しバッ フ ァ) 、 D A Cに接続された出力用の F I F 0などを含んでいる。 このサウ ン ド Iノ0 1 内の前 己 A D Cには外部オーディォ信号入力端子 4 5からアナ口グオーディ 才信号が入力され、 サ ンプリ ングクロ ック発生回路 4 2から発生される所定周波 数のサ ンプリ ングクロ ッ クに応じてこれを A D変換し、 この A z D変換したォ ーディォ信号を前記入力用の F I F Oに取り込む。 この入力用 F I F Oにデータ が存在するとき、 録音処理を要求する信号を DM A C 4 0 に出力するよ 0に動作 する。 D MA C 4 0では、 サウ ン ド 1 /04 1 からの録音処理要求に従つて入力 用 F I F Oのオーディ オデータを取り込み、 パス 4 4 を介して、 内部メ モ リ例え ば R A Μ 3 3に 己憶する。
外部メ モリ ドラ イブ 4 3は、 フロ ッ ピーディ スクあるいは C D— R 0 M (コ ン パク トディ ス ク · リー ドオン リ一メモ リ) や M 0 (光磁気ディ スク) などの外部 記録媒体 4 6を着脱自在に装着して、 該外部記録媒体 4 6 に対するデータの読み 害きを行うものである。 外部記錄媒体 4 6 は、 図 3〜図 5 に示されたよ όな制御 プロ グラ ムやその他のブログラ ムを格納するために使用してもよいし、 オーディ ォデータ等を格納するために使用してもよい。 例えば、 送 f言したいオーディオデ 一夕を 5己憶してある外部記録媒体 4 6を ドライブ 4 3 にセ ッ ト し、 このオーディ ォデータを読み込んで、 バス 4 4を介して、 内部メ モ リ例えば R A Μ 3 3 に記憶 する。
図 6の シス テムを送信側 1 0 と して機能させる場合は、 C P U 3 1 は、 図 3 , 図 4 に示されたような送信用のプログラ ムを実行して、 R AM 3 3に記憶した才 一ディ ォデータを、 ネ ッ ト ワーク I ノ 03 4を介してネ ッ トワーク 3 0 (図 2 ) に伝送する。
図 6のシステムを受信側 2 0 と して機能させる埸台は、 C P U 3 1 は、 図 5に 示されたような受信用のプロ グラムを実行し、 ネ ッ ト ワーク に Z03 4を介して ネッ ト ワーク 3 0 (図 2 ) を通つて伝送されてく るデータを取り込み、 これを内 部メモ リ例えば R A M 3 3に記憶する。 また、 受信したサ ンプリ ングク ロ ック周 波数に応じてサンプリ ングクロ ッ ク発生器 4 2から発生するク ロ ッ ク周波数を可 変設定する。 R A M 3 3 に記憶した受信したオーディ オデータは、 ハー ドデイ ス ク 3 9や外部記憶媒体 4 6に保存するよう にしてもよいし、 DMA C 4 0の制御 の下で読み出して、 サウ ン ドシス テム 4 7を介して発音するよ うにしてもよい。 その場合、 DMA C 4 0 は、 R AM3 3に記憶されているオーディオデータを、 サウ ン ド 1 /04 1からの再生サンプリ ングク ロ ッ ク に同期して 1サンプルずつ ダイ レ ク ト メ モ リ アク セ ス方式で該出カバ 'ソ フ ァから読み出してサウ ン ド I / 0 4 1 に送る。 サウ ン ド I / 0 4 1 では、 その内部に設けられている出力用の F I F 0 に上記オーデ ィ オデータ を書き込み、 かつ、 これをサ ンプリ ングク ロ ッ ク に 従って該出力用 F I F Oから読み出し、 D A Cに与えて D / A変換する。 D Z A 変換された波形データ は、 サ ウ ン ドシステム 4 7 に与えられ、 空間的に発音され る
図 3〜図 5 に示されたような、 本発明に從ぅ送信処理又は受信処理を行うため のプロ グラムは、 R O M 3 2 , R A M 3 3 あるいはハー ドディ ス ク 3 9 のいずれ に S己憶しておいてもよいし、 外部記憶媒体 4 6 に記憶してもよい。
また、 ネ ッ ト ワ ーク I ,' 0 3 4 を介して通信ネ ッ ト ワー クに接統し、 外部のサ 一バコ ンビュータ (図示せず) から、 上記本発明に従う送信処理又は受信処理を 行うためのプロ グラ ムを受け取って、 図 6 のコ ン ビュ ータの内部の R A M 3 3又 はハー ドディ ス ク 3 9又は外部記録媒体 4 6等に転送し、 格納するようにしても よい。
以上の通り、 こ の発明の第 1 の実施例によれば、 デ ィ ジタ ルオーディオデータ のよ うな、 一定周期の時系列的な配列を持つ複数のデータを、 ネッ ト ワー クを介 して ί云送する場台において、 非同期バケツ トを使用してその利点を享受でき るよ うにすると共に、 パケッ 卜に含めて送信する時間情報をできるだけ少ないデータ 量で表現して 1 バケツ ト当り の送 ifデータ量を減少させることができるよ όにな る、 という優れた効果を奏する。
また、 送受信間の時間遅れをできるだけ少なく したデータ伝送方式を提供する ことができる。 更に、 少ないデータ量で時間情報を表現した場台において、 受信 側での時間情報の再生演算処理をできるだけ簡略化できるようにすることができ 次に、 第 2の実施例について説明する。
図 7は本発明のデータ転送シス テムの構成の一例を示すブロッ ク図である。 こ の図において、 1 1 0は前記ネッ トワークであり、 前記図 2 5 に示したアイソク 口ナ ス転送を行うことができるものである。 また、 1 1 1 ~ 1 1 3はこのネッ ト ワーク 1 1 0に接铳されている各ノ一 ドの一例であり、 1 1 2は時間軸上で再現 することが必要とされる時系列データを送信する送信局であり、 例えば楽音波形 信号を送出する音源装置である。 また、 1 1 3は前記時系列データを受信する受 信局であり、 例えば前記楽音波形信号を混台する ミキサである。 この送信局 1 1 2から所定のサンブリ ングタ イ ミ ングによ りサンプリ ングされた楽音波形データ などの時系列データがタィム スタ ンプを付加して送信され、 前記受信局 1 1 3 は そのデータを受信して前記夕ィム スタンプにより指定されたタィ ミ ングで楽音波 形データを再生する。 なお、 このネ ッ ト ワーク 1 1 0 には複数のその他のノー ド も接統されており、 その他の 1 局 1 1 が前述したサイ クルマスター (サイ クルス ター トパケッ ト送出局) となっている。
図 8は、 前記各ノ一 ド 1 1 ! 〜 1 〗 3の内部構成の一例を示すブ D ッ ク図であ り、 1 2 1 は中央処理装置 ( C P U ) 、 1 2 2 は動作プロ グラ ムや各種データが 格納されている R O M、 1 2 3 はワーキングエリ ア等と して使用される R A M、 1 2 4 は前記サィ クルタ イ マーレ ジスタを含み、 各種タイ ミ ング信号を発生する 夕イ マ、 1 2 6 は前記ネ ッ ト ワーク 1 1 0 に接铳するためのネ ッ 卜 ワーク イ ンタ フ ユ ー ス回路、 1 2 7は内部バスである。 また、 1 2 5はデータ利用 生成回路 であり、 このノー ドが送信局 1 1 2である ときはデータ生成回路とされ、 受信局 1 1 3であるときはデータ利用回路と されている。
図 9 Aおよび図 9 Bは、 前 己送信局 1 1 2 と前記受信局 1 1 3 におけるデ一タ 転送動作を説明するための機能プロ ク図である c
図 9 Aは前記送信局 1 1 2 の機能を示すブロ ッ ク図である。 この図において、 1 3 1 はデータ生成回路であり、 1 2 5 s e cの前記基準周期毎に、 所定のサ ンブリ ング周期でサンプリ ングされた複数の楽音サンブルからなるデータ と、 該 データに付与されるタイ ムス タ ンプとによ り、 アイ ソ ク ロナスチ ャ ンネルの送信 パケッ トを生成する。 1 3 2 は前記データ生成回路 1 3 1 によ り生成されたパケ ッ トを格納するためのデータバッ フ ァ 、 1 3 3は前記データバッ フ ァ 1 3 2に格 納されたバゲ ツ トが前記第 1 のタ イ ミ ングを示す前記サイ クルタイマーレジスタ からの出力 (サイ クルタイマ出力) に応じて書き込まれる F I F 0 ( F i r s t I n F i rs t Ou t ) 構成の待機バ ッ フ ァ 、 1 3 4は前記新たな伝送サイ ク ルの開始を示す サイ クルスター トバケツ トを受信することにより発生されるサイ クルスター ト信 号に応じて前記待機バ ッ フ ァ 1 3 3から読み出された前記パケ ッ トが格納される 送信バ ッ フ ァであり、 この送信バ ソ フ 1 ァ 3 4 に格納されたパケッ トは当該アイ ソク ロナ スチヤ ンネルに指定されたタ ィ ミ ングで前記ネ ッ トワーク 1 1 0 に送出 される。
図 9 Bは前記受信局の機能ブロ ッ ク図であり、 1 3 5は前記ネッ トワーク上に 送出されたパケッ トのうちのこの受信局において受信すべきパケッ トを受信し格 枘する受信バ ッ フ ァ 、 1 3 6 は前記受信バ ソ フ ァ 1 3 5 に格納されたパケ ッ トが 前記サィ クルスター ト信号に応じて書き込まれる F I F O構成の待機バ ソ フ ァ 、 1 3 7は前記待機パツフ ァ 1 3 6内のパケ .,' トを前記第 1 のタイ ミ ングを示すサ イ タ ルタ イマの出力に応じて読み出すデータバッ フ ァ 、 1 3 8 は前記データバッ ファ 1 3 7 に格納されたバケ ツ ト によ り伝送されたデータをタ イ ムスタ ンプによ り指定されたタィ ミ ン グで再生するデータ利用回路である。
このよ うに、 送信側においては、 第 1 のタイ ミ ングに対応してデータパケッ ト を生成し、 これをサイ クルス タ一 ト信号 (第 2のタイ ミ ング) により ネ ッ ト ヮー ク上に送信する c —方、 受信側においては、 前記第 2 のタ イ ミ ングに応じて送信 された'、'ケッ トを受信し、 前記第 1 のタイ ミ ングに応じて当該データを再生する こと となる。
図 1 0 A及び図 1 0 Bはこのデータ生成回路 1 3 1 において生成される送信パ ケッ トを説明するための図である。 図 1 0 Aは送信されるテータを説明するため の図であり、 判えば楽音波形信号などの連続信号を所定のサ ンブ リ ング間隔 t s (この場台には、 t s = 2 5 ( = 1 2 5 ノ 5 ) 〃 s e c ) でサンプリ ングして得 られた 5 つの離散データ 1 〜 5が送信されるデータ とされている。 この第 1番目 のサンプリ ングデータ 1 は前記第 1 のタイ ミ ング信号から時間 tだけ遅れた時点 においてサンプリ ングされたデータであり、 その他のサンプリ ングデータ 2 ~ 5 は前記時刻 tからそれぞれ時間 t sの対応する倍数に相当する時間だけ遅れた夕 ィ ミ ングでサンプリ ングされたデータである。
また、 このバス システムにおいては システムの基準ク 口 ッ ク周波数 Φ = 2 4. 5 7 6 M H z (ク ロッ ク周期 = 4 0. 7 n s ) とされており、 前記 1 基準サイ ク ノレ ( 1 2 5〃 s e c ) 内の時間位置を前記クロッ ク周期を単位と して表すことが でき る。 すなわち、 前記 1 基準サ イ ク ル内の時間位置を前記ク ロ ッ ク周期を単位 と して 0〜 3 0 7 1 ク ロ ッ クによ り表すこ とができる。
そ こて、 本発明においては、 前記タ イ ム ス タ ンプと して、 その基準サイ ク ル内 の第 1 番目のサ ンプリ ン グデータ 1 の該基準サィ ク ル内の時間位置 t を前記ク π ッ ク周期を単位と して表した値をタイ ムスタ ンプ値と して使用し、 その他のサ ン プリ ン グデータ 2 〜 5 については、 前記第 1 のサ ンプリ ン グデータ 1 からサ ンプ リ ング周期 t s を順次加算するこ とによ り再生時刻を決定するように している。 このよ う なデー タを送信するためのパケ ッ ト の構成を図 1 0 Β に示す。 この図 に示すよ うに、 送信パケ ッ ト は最初に前 Ϊ己時間 t を表すタ ィ ム ス タ ンプ、 铳いて、 第 1 〜第 5の各サ ンプリ ング値が結台されて構成されている。 前述したよ うに、 タ イ ム ス タ ンプはその基準サ ィ ク ル内における前記時間 t を前記シス テム ク ロ ッ ク数によ り表したもので、 0〜 3 0 7 1 の値をと るため、 1 2 ビ ッ ト のデータ と なる。
比較のために、 前記従来使用されていたタ イ ム ス タ ンブの構成を図 1 0 Cに示 す。 この場台にも、 図 1 0 Bに示した本発明のパケ ッ 卜 と同様にタ イ ム ス タ ンプ と各サ ンプリ ングデータ 1 〜 5 よ り構成されている力 タ イ ム ス タ ンプが、 例え ば、 3 2 ビッ 卜のデータ とされている。 すなわち、 その下位 1 2 ビッ トにより前 記本発明の場台と同様に前記時間 t を示し、 次の 1 3 ビ ト によ り前記基準サィ ク ルの番号を示し、 さ らに最上位の 7 ヒ ッ トによ り ^で表現した時刻を示してい る。 こ のよ う に、 従来は各ノ一ドで共有している絶対時間の全てを表現するタ ィ ムス タ ンプと されていたため、 前記図 1 0 Bに示した本発明のパケ > トよ りも 2 0 ビッ ト長いタイ ムスタ ンプとなっていた。
さて、 本発明のネ ッ ト ワーク システムにおいては第 1 のタイ ミ ングに応じて生 成された送信データを第 2のタイ ミ ングに応じてネ ツ ト ワ ークに送出している力;、 前述したように、 前記第 2のタイ ミ ングは前記第 1 のタイ ミ ングに対して遅延を もって発生される ことがあるため、 第 1 のタイ ミ ングによ り決定される 1 つの基 準サイ ク ルの中に、 2つの送信データが含まれるという状態が発生する場台があ る。 このような場台においても、 本発明のデータ転送シス テムによれば問題な く 所定の時間位置で原データを再現する ことができ る。 図 1 1 のタ イ ムチ ャー トを参照して、 本発明のデー タ転送シス テムの動作につ いて説明する。 この図において、 横軸は時間軸であり、 時刻 t 1 から t 2 までの 基準サイ ク ルにおける原デ一タをサ ンプリ ングして得られたデータは、 前記デー タ生成回路 1 3 1 において、 前述した 1 2 ビッ ト のタ イ ム スタ ンプが付加された バケ ツ ト 5 1 とされ、 データ バッ フ ァ 1 3 2 に格納される。 このデータノ、 ッフ ァ 1 3 2 に格納されたパケ ッ ト 5 1 は、 時刻 t 2 に発生されるサ イ ク ルタイ マ出力 によ り 、 前記 F I F 0樣成の待機バッ フ ァ 1 3 3 に格納される。
また、 時刻 t 2 から t 3の期間の原デ一タに対応するパケッ ト 5 2 も同様に生 成されてデ一タ パ ッ フ ァ 1 3 2 に格納される。 時刻 t 3 になる と、 前記サ イ タ ル タ イ マ出力によ り 、 前記 ケ ッ ト 5 2 は前記待機バッ フ ァ 1 3 3 に格钠される。 この時亥 1| t 3 においては前述したよう に、 サイ ク ルス ター トパケ ッ トが送信され ていないので、 前記待機バッ フ ァ 1 3 3 には、 前記パケ ッ ト 5 1 とバケ ツ 卜 5 2 が格納されている。 こ こて、 図示するよ う に、 前記時刻 t 3から少し遅れて伝送 サイ ク ルが開始され、 サ イ ク ノレス ター ト バケ ツ トが送出されると 、 サ イ ク ルス タ 一ト信号が出力され、 これに応じて、 前記待機バッ フ ァ 1 3 3 から前記パケッ ト 5 1 が前記送信バ ッ フ ァ 1 3 4 に転送される。 こ の送信バッ フ ァ 1 3 4内に格納 されたパケ ッ トは この伝送サ イ ク ル内のこのアイ ソ ク 口ナ スチ ヤ ンネ ルに対応す る時亥【Iにネッ ト ワーク 1 1 0上に送出されること となる。
図示の場台においては、 こ の ί云送サ ィ ク ルは基準サ ィ ク ルょ り遅れて開始され てお り 、 前記パケ ッ ト 5 1 がネ ッ ト ヮ ーク上に送出されるのが次の基準タ イ ミ ン グ時亥 II t 4より も後にな っている。 このと き、 このパケ ッ トは時刻 t 4 よ り も後 に受信バッフ ァ 1 3 5 に格納されるこ ととなる。 そして、 時刻 t 4 よ り も時間 t dだけ遅れたタ イ ミ ングで次の伝送サ ィ ク ルが開始され、 そのサイ ク ルス ター ト ハ'ケ ッ ト 1 0 1 が送出される と、 これによ り、 前 己待機バッフ ァ 1 3 3から前記 バケ ツ ト 5 2が前記送信バッ フ ァ 1 3 4 に転送され、 この伝送サイ ク ル期間にネ ッ ト ヮ一 ク上に送出される。 このよ う に、 時刻 t 4〜 t 5 の一つの基準サ イ ク ノレ 内に 2つのパケ ッ トが送受 f言されるこ ととなる。
時刻 t 4〜 t 5 の期間にパケ ッ ト 5 1 とパケ ッ ト 5 2 とが受 ί言され受信バッ フ ァ 1 3 5 に害き込まれる力 、 受信されたパケ ッ ト は前記サイ ク ルスター ト信号に より、 前記待機バッ フ ァ 1 3 6 に移行され、 基準タイ ミ ングを示すサィ ク ルタイ マ出力により該待機バッ フ ァ 1 3 6からデータバ ッ フ ァ 1 3 7 に転送される。 す なわち、 時刻 t 4 の後にパケ ッ ト 5 1 が受信バッ フ ァ 1 3 5に格納され、 該パケ ッ ト 5 1 は次の伝送サィ ク ルの開始を表すサイ ク ルスター ト信号により、 待機バ ッフ ァ 1 3 6 に格納される。 このサイ ク ルスター ト信号により開始された ί云送サ ィ ク ルにおいて伝送されたパケ ッ ト 5 2 は受信バッ フ ァ 1 3 5 に格納されている。 時刻 t 5 になると当該サィ ク ルタ イマ出力により、前記待機バッ フ ァ 1 3 6 に格 納されたパケ ッ ト 5 1 はデータバッ フ ァ 1 3 7 に害き込まれ、 前述したよ 0に、 データ利用回路 1 3 8において時間軸上に再現されること となる。 また、 前記受 信バソ フ ァ 1 3 5 に格納されていた、 パケ ッ ト 5 2 はその次の伝送サィ ク ルの開 始を示すサィ ク ルスター ト ί言号に応じて、 前記待機バッ フ ァ 1 3 6 に転送され、 時刻 t 6 に前 己データバ ッ フ ァ 1 3 7 に書き込まれて、 時刻 t 6〜 t 7 の期間に 正確なタ イ ミ ン グで再現されるこ ととなる。
このよ うにして、 各基準サィ ク ル内のサイ タルタ イ マ時刻からの時間のずれの みを表したビ ッ ト数の少ないタ イ ムス タ ンプデ一夕を用いるだけて、 正確なタ ィ ミ ングで原デ一タを再現する ことが可能となる。
以上説明した各機能ブロ ッ クの機能をソ フ ト ウヱァによ っても実現する こと力; でき る。 図 1 2 A〜図 1 2 C及び図 1 3 A〜図 1 3 Cは、 このよ うな機能を実現 するための送信側および受 ί言側における処理のフ ロ ー チ ヤ一 I·である。 図 1 2 A 〜図 1 2 Cは送信側における処理を示し、 図 1 3 A〜図 1 3 Cは受信側における 処理を示している。
送信側において、 図 1 2 Aは前記デー タ生成処理を示す。 こ の処理は前記デ一 タ生成回路と同様の機能を実現するものであり、 送信すべき原データを入力と し て、 その先頭値に対応するタ イ ム ス タ ンプを付与したデ一タパケ '.' トを生成する 処理である。
図 1 2 Bは前記第 1 のタイ ミ ングを示すサイ ク ルタ イ マ割込が発生したときに 実行されるサ イ ク ルタ イ マ割込処理を示し、 データバッ フ ァ內のデータを待機バ ソ フ ァ に追加し、 データ バッ フ ァから消去する処理が行われる。
図 1 2 Cは前記サイ ク ルス ター トパケ ツ トを受信したと きに発生されるサィ ク ルスタ一 ト割込により開始されるサィ ク ルスター ト割込処理を示し、 この処理に おいては、 待機バ ッ ファ内の最も古いデータを送信バ ッ フ ァに取り出す処理が行 われる。
受信側の処理において、 図 1 3 Aはネッ トワー ク上のパケッ トを受信したとき に発生するデータ受信割込処理を示し、 この処理においては、 受信データが自局 に必要なデータであるときに、 そのパケッ トを受信バ ッ フ ァ に記録する。 図 1 3 Bは前記サイ ク ルスター トパケ ッ トを受信したと きに発生されるサィ クルスター ト割込により開始される処理を示し、 受信バッ フ ァ内に記録された前記バケツ ト を待機バッフ ァ内に追加し、 そのパケッ トを受信パツ ファから消去する処理であ る。 図 1 3 Cは前記サ イ ク ルタイ マ割込によ り開始される処理を示し、 待機バ ッ ファ内の最も古いテータをデータパッ フ ァに移動する処理である c
なお、 以上においては、 1 E E E 1 3 9 4高速シ リ アルバス システムを用いた 場台について説明してきたが、 本発明はこ れに限られるこ とな く 、 同様のァイ ソ クロナス転送をサポー ト しているネ ッ ト ワーク システムに同様に適用するこ とが できる。
また、 前記タ イ ムス タ ンプの ビ ッ ト数も、 要求される時間精度などに応じて任 意に決定することができる。
さ らに、 転送されるデータは楽音等に限らず、 例えば、 画像 (動画) データ、 楽音以外の波形データなどの時間的に流れるものであればよい- 以上説明したように、 本発明の第 2 の実施例によれば、 タ イ ム ス タ ンプのビッ ト数を少なくすることができ、 伝送効率を向上させるこ とができる。
次に、 第 3の実施例に係るデータ転送方式について説明する。
この第 3の実施例においては、 前記図 7 と同様の全体システム棣成を使用する ものと してよい。 また、 各ノー ドの内部構成も図 8と同様のものを使用するもの として説明する。 図 1 4 はこ の第 3 の実施例における送信パケッ トを説明するた めの図であり、 これも、 図 1 0 A及び図 1 0 Bに示した送信パケッ ト例と同様で ある。
図 1 5 は、 この第 3 の実施例に係るテータ IE送方式が適用されるネ .,' ト ワー ク の構成例を示す。 ネ ッ 卜 ワー ク は、 例えば図 1 5 に示すよ うに、 ノー ド N 1 1 〜 N 1 3を含むセ グメ ン ト 1 と、 ノ ー ド N 2 1 ~ N 2 3 を含むセ グメ ン ト 2 と、 ノ ー ド N 3 1〜 N 3 3 を含むセ グメ ン ト 3 と力、ら構成され、 セグメ ン ト 1 のバス とセグメ ン ト 2 の ノ スの間にはプリ ッ ジ B 1 が配置されており、 セグメ ン ト 2のバスとセグメ ン ト 3 のバス の間にはルータ R 1 が配置されている。
ブリ ッ ジ B 1 は、 物理層と デー タ リ ンク層を備え、 セグメ ン ト I のバス とセグ メ ン ト 2 のバスを相互接続している。 また、 ルー タ R 1 は、 プロ ト コ ルの異なる 伝送路間を相互接続する こ とができ、 セグメ ン ト 2 のパス とセ グメ ン ト 3 のバス とを相互接続している。 なお、 ブリ ッ ジ B 1 , ルータ R 1 は図 8に示すノー ドの 構成とほぼ同 じ構成とされてよいが、 デー タ利用 データ生成回路 1 2 5 は備え ていない。
図 1 5 に示すマ、 ッ ト ワ ーク では、 前記図 2 5 に示すよ うなァイ ソ ク ロナ ス転送 および非同期パケ , · ト転送が行われる。 従って、 サ イ ク ルタイ マーのタイ ミ ング の時間間隔 ( 1 2 5 s e c ) でサイ ク ル スター トパケ ッ トが基本的に送信され るが、 そのと きに、 他のパケ ッ 卜の転送が進行中であると きには、 前述したよ う に、 その転送が終了する までサイ ク ルス タ ー ト ハ'ケ ッ 卜 の送信は待たされるよ う にな されている。
こ のよ う なアイ ソ ク ロ ナ ス転送および非同期パケ ッ ト転送におけるセグメ ン ト 間の本発明のテー タ 送方式は、 ブリ ジ B 1 と ルー タ R 1 によ り実行される。 と こ ろて、 図 1 5 に示すネ ッ ト ワー ク においては、 前述したよ う に非同期パケ ッ トの転送はそのパケ ッ 卜が終了するまで転送されるので、 前 S己サイ ク ルタイ マ 一の周期を越えて転送される ことが起きる。 この結果、 サイ クルタイマーの 1 周 期の中に、 2つの送信データが含まれるという状態が発生する場台がある。 こ の ような場台においても、 本発明のテ一タ転送方式によれば、 データ間の相対的な 時間関係を失 ό こ とな く 転送する ことができると共に、 所定の時間位置で原デ一 タを再現する こ とができ る c
図 1 6 のタ イ ム チ ヤ一トを参照して、 本発明のデータ転送方式の動作について 説明する。 こ の図において、 横軸は時間軸であり、 同図 ( d ) に示すよ όに時刻 t i - 2から時亥 1| t i - 1までのサ イ ク ルタ イ マーの 1 サイ ク ル ( 1 フ レー ム) におけ る原データをサ ンプリ ン グして得られたデータ S i -2は、 前述した 1 2 ビッ トの タ イ ム ス タ ンプが付加されたバケ ツ ト A 1 とされ、 データバッ フ ァ に格納される。 このデータバッ フ ァに格納されたバケ ツ ト A 1 は、 時刻 t i - 1に発生されるサイ ク ルタ イ マ出力により、 待機バッ フ マ に格納される。 そ して、 時刻 t iに達した 後にサイ クルマスタ一から送出されたサイ クルス ター トバケツ 卜を検出した時点 において、 待機バッ フ ァ に格納されたパケ ッ ト B 1 は送信バッ フ マ にパケ ッ ト C 1 と して格納される。 次いで、 送信バッ フ マに格納されたパケ ッ ト C I を送出す べきチ ヤ ンネルに割り当てられたタイ ミ ングで図 1 5 に示すよ όなネ ッ ト ワーク にバケ ツ ト D 1 と して送出される。
また、 時刻 t i _ l力 ら時亥 Ij t iまでのサ イ ク ルタ イマーの 1 サイ クノレ ( 1 フ レー ム) における原テータをサ ンプリ ングして得られたデータ S i - 1は、 前述した 】 2 ビ ッ 卜 のタ イ ム ス タ ンプが付加されたパケッ ト A 2 とされ、 データバッ フ ァ に 格納される。 このデータ バ ッ フ マ に格納されたパケ ッ ト A 2 は、 時刻 t iに発生 されるサ イ ク ルタ イマ出力によ り 、 待機バッ フ ァ に格納される。 そ して、 時刻 t i +1に達した後にサイ ク ルマス タ一から送出されたサ イ ク ルス ター トパケ ッ トを 検出した時点において、 待機バッ つ ァ に格納されたパケ ッ ト B 2 は送信パッフ ァ にパケ ッ ト C 2 と して格納される。 次いで、 上記チャ ンネ ルに割り当てられた夕 ィ ミ ン グで図 1 5 に示すようなネ ッ ト ワー ク にパケッ ト D 2 と して送出される。 こ の場台、 図示するよ うにサ イ ク ルタ イ マ一のタイ ミ ングである時亥 Ij t iと時 亥 Ij t i + 1との間のフ レームにおいて送出されたサイ ク ル ス タ ー トパケ ッ ト の送出 時刻は、 前述したよ う に非同期パケ ッ トの転送により時刻 t iからかなり遅れて いるため、 時亥 Ij t i + 1と時刻 t i + 2との間のフ レームにおいては、 同じチ ャ ンネル のパケ ッ ト D 1 とパケ ッ ト D 2 とが存在するよ うになる。 この場合、 パケ ッ ト D 1 およびパケ ッ ト D 2に付加されたタ イ ム スタ ンブは相対値とされているため、 受信側が単純に再生処理を行う と、 パケ ッ ト D 1 内のデー タ とパケ ッ ト D 2内の データとが混在してしま うおそれがある。
すなわち、 データ間の相対的な時間関係を失うおそれが生じる ことになる。 本発明のデータ転送方式においては、 このよ う なおそれを生じさせないように 図 1 6 ( ί ) ない し同図 ( i ) に示すような処理が行われる。 なお、 これらの処 理は、 図 1 5のプリ ッ ジ B 1 およびルータ R 1 にて行われる。
まず、 図 1 6 ( ί ) に示す処理では、 受信されたパケ ッ ト Ε 1 のサイ ク ルス夕 一トハ'ケ ッ トからの遅延時間 delaバ η〉が計測される。 同様に、 受信されたパケ ッ ト E 2のサイ クルスター トパケ ッ 卜からの遅延時間 delay(n+l)が計測される。 次 いで、 受信されたパケ ッ E 1 に転送用タ イ ムス タ ンプを付与する処理、 およひ、 バケ ッ ト E 1 に付加されていたタ ィ ム ス夕 ンプを再生用タ ィ ム スタ ンプに置き換 える処理が行われる。 これらの処理においては、 まず、 パケ ッ 卜 E 1 がどのサイ クルタ ィ マーの周期に属するかが判定されるが、 この判定はバケ ツ E 1 のサイ ク ルスター トバケ ツ トが存在するフ レームがバケ ツ ト E 1 が属するフ レームと半 lj 定される。
すなわち、 パケ ッ ト E 1 のサ イ ク ルス タ ー ト バケ ツ トは時亥 II t iと時亥 lj t i +1と の間のフ レームにおいて送出されているので、 パケッ ト E 1 は時刻 t iから始ま るフ レームに厲するものと判定される。 同様の処理を行う ことにより、 パケッ ト E 2 は、 時刻 t i + 1から始ま る フ レー ムに属するものと判定される。
ついで、 時刻 t iに 1 フ レームの周期時間と遅延時問 del ay (r を加算して生成 したタイ ムス タ ンプを転送タ ィ ムスタ ンプと して、 パケ ッ ト E 1 に付加する。 そ して、 この転送タ ィ ム ス タ ンプの時刻に達したと き、 すなわち、 時刻 t i + 1から 遅延時間 delay(n)が経過した時点で同図 ( h ) に示すように待機バッ フ ァ に ケ ッ ト F 1 と して格納される c
バケ ツ ト E 2においても同様であり、 時刻 t i + 1に 1 フ レームの周期時間と遅 延時間 delay (n+1)を加算して生成したタ イ ムス タ ンブを転送タ ィ ム ス タ ンブと し て、 パケ ッ ト E 2 に付加する。 そ して、 この転送タイ ムスタ ンブの時刻に達した とき、 すなわち時刻 t i + 1から遅延時間 delay(n+l)経過した時点で同図 (h ) に 示すよう に、 待機バッ フ ァ にパケ ッ ト F 2 と して追加される。
待機バッ フ ァ に格納されたパケ ッ ト F 1 は、 時刻 t i + 3から開始されるフ レ一 ムにおいて別セグメ ン ト に送出されたサイ クルスター トパケ ッ トを検出した時点 で送信バッ フ ァに格納され、 パケ ッ ト F 1 を 送すべきチ ャ ンネ ルに割り当てら れたタイ ミ ングで図 1 6 ( i ) に示すよう にバケ ツ ト G 1 と して別セグメ ン ト に 送出される。 また、 待機バッ フ ァ に格枘されたパケ ッ ト F 2は、 時刻 t i + 4から 開始されるフ レームにおいて別セグメ ン トに送出されたサイ クルスター ト パケ ッ トを検出した時点で送信バッ フ ァ に格納され、 上記チ ヤ ンネルに割り当てられた タイ ミ ングで図 1 6 ( i ) に示すようにバケツ ト G 2 と して別セグメ ン トに送出 される。
なお、 受信バケ ッ トのサイ ク ルスター トパケ ッ トの遅延時間 de l aバ n)あるいは 遅延時間 de l ay ( n+ l >を加算して転送タ ィ ム スタ ンプを生成する理由は、 複数種類 のプロ ト コルのァイ ソク ロナ スパケッ トを送信する場台に、 遅延時間 del ayを使 用しないと、 1 つのフ レームに納ま らない場台が生じるからである。
また、 受信されたパケ ッ ト E 1 に付加されていたタ イ ムスタ ンプは、 時刻 t i に 1 フ レームの周期時間と付加されていた相対値のタ ィ ム スタ ンプとが加算され て新し く生成された再生タィ ム ス タ ンブに gき換えられる。 そ して、 この再生タ ィ 厶 ス タ ンプの時刻に達したとき 、 すなわち、 時刻 t i +】から相対値のタ イ ムス タ ンプ時間が経過した時点でバケ ッ ト E 1 のデ一タが利用回路 1 2 5 に送られ、 図 1 6 ( g ) に示すよう に時刻 t i + 2から開始されるフ レームにおいて、 時間軸 上に再現される こ とになる。
同様に、 受信されたパケッ ト E 2に付加されていたタ イ ムス タ ンプは、 時刻 t i +1に 1 フ レームの周期時間と付加されていた相対値のタ ィ ム ス タ ンプとが加算 されて新しく生成された再生用タ イ ム ス タ ンプに置き換えられる。 そ して、 この 再生タ イ ムス タ ンブの時刻に達したと き、 すなわち、 時刻 t i +2から相対値のタ ィ ム ス タ ンプ時間が経過 した時点でパケ ッ 卜 E 2 のテー タが利用回路 1 2 5 に送 られ、 図 1 6 ( £ ) に示すよ うに時刻 t i + 3から開始されるフ レー ムにおいて、 時間軸上に再現される こ とになる。
以上説明した動作はソ フ ト ウ ェ アによ っても、 また、 ハー ドウ ユアによ っても 実現すること もできる。 この第 3 の実施例に係る機能を実現するための送 ί言側に おける処理のフローチャー ト は、 図 1 2 Α〜図 1 2 Cに示したものと同様のもの を使用してよい。
以下に説明する図 1 7, 図 1 8 , 図 1 9 は、 図 1 5 におけるブ リ ッ ジ Β 1 , ル ータ R 1 の機能を実現するフ ローチ ヤ一 トである。
図 1 7 は受信側のサイ ク ルスター ト割込処理のフ 口一チ ャー トであり、 サイ ク ルスター ト割込処理は、 サイ クルスター トパケ ッ トを受信したときに発生される サイ クルスター ト割込により開始され、 ステッ プ S 4 0 にてフ レーム内の時刻を 計測するサイ クルスター トカ ウ ンタが初期値に リ セッ ト される。 ついで、 ステ ツ プ S 4 1 にてネ ッ ト ワ ー ク の時間に応じて進むサ イ ク ル夕 イマ レ ジス タ内の 3 2 ビ トの時刻情報 TIMEの内上位 2 0 ビッ トを取り出し、 取り出した時刻情報をレ ジスタ ssp— base_timeに格納している。 上位 2 0 ビッ トの取り出しは、 時刻情報丁 1MEと 1 6進のデータ OxFFFFFOOOとの論理積をとる ことにより行われている。 なお、 時刻情報 TIMEの内の上位 2 0 ビ ッ トはどのタ イ ミ ングから開始されるフ レームであるかを識別できる情報であり、 残る 1 2 ビ ッ トの情報はフ レーム内の 時刻を識別する情報である。
図 1 8 は受信側のデータ受 ί言割込処理のフ ロー チ ヤ一トであり、 データ受 ft割 込処理は '、'ケ ッ トを受信したと きに発生されるデータ受信割込によ り開始され、 ステ ッ プ S 5 0 にて受信されたァイ ソ ク ロナスパケ ッ 卜に付加されていたタイ ム スタ ンブを取り出し、 レ ジス夕 Time Stampに格納する。 ついで、 ステ ッ プ S 5 1 にてその時点のサイ ク ル スター ト カウ ン タ のカウ ン ト値が受信されたパケ ッ トの 遅延時間と してレ ジスタ del ayに格納される。
そ して、 ステッ プ S 5 2 にてレ ジス タ ssp— bas timeに格納されている時刻情 報に、 1 6進のデータ 0x 1000、 および、 レ ジス タ delayに格納されている遅延時 β¾とが加算され、 加算された時刻情報がレ シ スタ TS】に格钠される。
铳いて、 ステ ッ プ S 5 3 にて時刻情報 TIMEよ り レ ジ スタ Time Stampに格納され ているタ イ ムスタ ンプ値が大きいか判定されており、 YESと判定された場合には そのタ イ 厶スタ ンプの時刻には未だ達しておらず、 ステッ プ S 5 5にてレジスタ ssp— base_timeに格納された時刻情報と、 1 6進のデータ 0 χ1000、 および、 レ ジ スタ Time St ampに格納されているタイ ムス タ ンプ値とが加算され、 加算される こ とによ り生成された再生タィ ムス タ ンブ値がレジスタ TS2に格納される。
また、 ステッ プ S 5 3 にて NOと判定された場台には、 すでにタイムスタ ンプの 時刻が過ぎており、 ステ ップ S 5 4 にてレ ジスタ Time Stampに格納されているタ ィム スタ ンプ値が再生夕 ィ ム スタ ンブ値と してレ ジ スタ TS2に格納される。
次いで、 ステッ プ S 5 6 にて受信されたパケ ツ 卜に レ ジ スタ TS1に格納されて いる時刻情報を転送タィ ムスタ ンプと して付与した後、 転送用バッ フ ァに移動す る。 さ らに、 ステ ッ プ S 5 7 にて受信されたデータに付与されていたタ イ ムス タ ンブを、 レジ ス タ TS 2に格納されている再生タ イ ム スタ ンプに置き換えた後、 読 み出し用バッ フ ァ に移動する。
図 1 9 は受信側のタィ マ割込処理のフ ローチ ャー ト であ り、 タイマ割込処理は、 シス テムの基準ク ロ ッ ク である 2 4 . 5 7 6 M H z のク ロ ッ ク信号 (周期 4 0 . 7 n s e c ) 毎に発生されるタイ マ割込によ り開始され、 ステ ッ プ S 6 0 にてサ ィク ルタイマーレ ジス タ中の時刻情報 T I MEの時刻と、 読み出し用バッファに格納 されているバケツ トに付与されている置き換えられたタ イ ムス タ ンプ、 すなわち、 レジ ス タ TS 2に格納されている再生タ イ ム ス タ ンプの時刻とが比較判定される。 この場台、 両者の時刻が一致あるいは時刻情報 T I MEの時刻が再生タィ ム ス タ ンプ の時刻を過ぎていると判定された場台は、 既に再生すべき時刻に達しているので、 ステ ッ プ S 6 1 にて読み出し用のバ ッ フ ァ 中のパケ ッ 卜のデー タを利用回路に出 力して、 利用回路において時間軸上にパケッ トのデータを再現する。 次いで、 ス テツプ S 6 2 にて読み出し用のバッフ ァ中のバゲッ トを消まする。
また、 時刻情報 T I MEの時刻が再生タィム スタ ンブの時刻を過ぎていないと判定 された場台は、 未だ再生すべき時刻に達していないので、 再生処理は行わず、 ス テ ツ プ S 6 3 に ジ ャ ンプする。
ス テ ッ プ S 6 3 では、 サイ ク ルタ イ マ一 レ ジス タ中の時刻情報 T I MEの時刻と、 耘送用バッ フ ァ に格納されている パケ ッ ト に新たに付与された レ ジス タ TS 1に格 納されている転送タ イ ム ス タ ンプの時刻とが比較判定される。 この場台、 両者の 時刻が一致あるいは時刻情報 T I MEの時刻が転送タィ厶 ス タ ンプの時刻を越えてい ると判定された場台は、 既に転送すべき時刻に達しているので、 ステップ S 6 4 にて転送用のバッ フ ァ中のバケツ トが別セグメ ン トに転送するパケ ッ トか否かを 判定し、 Y E S と判定された場台には、 ス テ ッ プ S 6 5 にて転送用バ ッ フ ァ中の パケッ トのデータを待機バソ フ ァに追加する。 次いで、 ス テ ッ プ S 6 6にて転送 用バッ フ ァ内のパケッ トのデータを消去する。
待機バ ッ フ ァ に追加されたバケ ツ ト のデータは、 前述したよ う に別のセ グメ ン トの所定のフレームにおけるサイ クルスター トバケツ トを検出したときに、 SIJの セグメ ン トに送出される。
この場台、 時刻情報 T I MEの時刻が転送タ ィ ムスタ ンブの時刻に達していないと 判定された塲台は、 未だ転送すべき時刻に達していないので、 タ イマ割込処理は 終了する。 また、 ステ ッ プ S 6 4 にて転送用のバッ フ ァ中のパケ ッ トが別セグメ ソ ト に転送するパケッ トでないと判定された場合は、 ステップ S 6 5 の転送用の 処理を行わずに、 ステッ プ S 6 6 にて転送用バッ ファ内のパケ ッ トのデ一タを消 去する。
なお、 以上においては、 I E E E 1 3 9 4高速シ リ アルバス シ ス テ ムを用いた 場台について説明してきたが、 本発明はこれに限られることなく 、 同様のァイ ソ ク ロナス転送をサボ一 ト しているネ ッ ト ワーク シ ステムに同様に適用する ことが できる。
また、 前記タイ ムスタ ンプのビ ッ ト数も、 要求される時間精度などに応ヒ'て任 意に決定する ことができる。
以上説明したよ うに、 本発明の第 3の実施例によれば、 受信データのサイ ク ル スター ト パケ ッ トからの遅延時間を、 該サイ ク ルスター トパケ ッ 卜が)!するサイ クルのスター ト時亥 1|に、 サイ クルの 1 周期時間と共に加算した時刻を転送用タィ 厶スタ ンプと して、 受信データに付与するよ 0に したので、 データ 送を効率的 に行う こ とができ ると共に、 データ間の相対的な時間関係を失 0 こ とを防止する ことができる。
また、 再生用タ イムスタ ンプに、 受信データに先行するサイ クルスター トパケ ッ トが属するサイ クルのスター ト時刻と、 前記サィ ク ルの 1周期時間とを加算し て新たなタイ ムスタ ンプを生成し、 再生用タイ ムスタ ンプをこのタイ ムス タ ンプ に置き換えるようにしたので、 再生用タ イ ムスタ ンプのビッ ト長を 3 2 ビッ 卜の ような長いビッ ト長と しなく ても、 データ間の相対的な時間関係を失う こ となく 効率的にデータを再生するこ とができ るようになる。
次に、 第 4 の実施例について説明する。
図 2 0 は、 第 4の実施例に係る本発明のネッ ト ワークデータの同期方法が適用 されたネ ッ ト ワーク シ ス テム の一実施の形態の構成例を示す。 この図において、 Ν 4 1 はノー ド 1 であり、 図 2 6 のノ ー ド 1 と同様に、 例えば音源装置とされて いる。 また、 N 4 2はノ ー ド 2 、 N 4 3 はノー ド 3であり、 それぞれ図 2 6 のノ ー ド 2 , 3 と同様に、 例えば、 リ バ一ブ処理部およびパンニン グ処理部とされて いる。 また、 N 4 4はノー ド 4 であり、 前記ネ ッ ト ワ ー ク上のデ一タの同期をと るための同期装置 (タ イ ムァ ラ イ ナー) である。 このタ イ ムァ ラ イ ナーの詳細に ついては後述する。 また、 N 4 5 はノー ド 5であり、 図 2 6のノー ド 4 ( N 4 ) と同様に、 例えば ミ キサとされている。
こ のよ う に構成されたネ ッ ト ワ ーク において、 前記ノー ド 1 ( N 4 1 ) は、 各 タイ ミ ング時間 ( フ レー ム) 毎に楽音デ一タを対応するチ ャ ンネルに送出するの であるカ 本発明においては、 各データにその送出タ イ ミ ングを示すデータマー クを付加して送出するよ う になされている。 このデー タマーク と しては、 前記フ レー ムを特定する ためのフ レ ー ム番号ある いは タ ィ ム ス タ ンプデータ などが使用 される。
さて、 前述した図 2 6 の場合と同様に、 ノー ド 1 ( N 4 1 ) から同じタ イ ミ ン グで送出されたデータ (例えば楽音データ) は、 それぞれ異なる経路を通って、 それぞれのノ ー ドにおいて所定の処理を施され、 ノー ド 4 ( N 4 4 ) のタ イ ムァ ラ イ ナーに到達するこ と となる。
すなわち、 前記図 2 6 の場合と同様に、 ノー ド 4 ( N 4 4 ) には、 第 1 に、 ノ — ド 1 ( N 4 1 ) から直接に入力されるデータ ( A 1 4 ) 、 第 2 に、 ノー ド 1 ( N 4 】 ) からノー ド 2 ( 4 2 ) に入力され、 該ノー ド 2 ( N 4 2 ) において所 定の処理 (例えば、 リ バーブ処理) を施されたのち入力されるデータ ( A 1 2 4 ) 、 第 3 に、 ノ ー ド 1 ( N 4 1 ) 力、ら前記ノ ー ド 2 ( N 4 2 ) に入力され、 該ノ ー ド 2 ( N 4 2 ) において例えばリ バーブ処理を施された後、 さ らに、 ノー ド 3 ( N 4 3 ) に入力され、 該ノー ド 3 ( N 4 3 ) において所定の処理 (例えば、 パ ン 二 ング処理) を施されたデータ ( A 1 2 3 4 ) 、 および、 第 4 に、 ノー ド 1 ( N 4 1 ) からノ ー ド 3 ( 4 3 ) に入力され、 該ノ ー ド 3 ( N 4 3 ) において例え ばパ ンニ ン グ処理を施された後、 入力されるデータ ( A 1 3 4 ) 、 の 4通りのデ 一夕が入力される。
図 2 1 は、 前記ノー ド 1 ( N 4 1 ) から同時に出力されたデータがそれぞれの 経路を経由して前記ノー ド 4 ( N 4 4 ) に到達するタ イ ミ ングを示した図である。 ノー ド 4 ( N 4 4 ) に入力されるデータのうち、 もっ と も早く到着するのは、 前 述した第 1 のデータ ( A 1 4 ) である。 ノ ー ド 2 における処理に要する時間を a 2 、 ノー ド 3 における処理に要する時間を a 3 とする と、 図示するように、 前記 第 2 のデータ ( A 1 2 4 ) は前記 A 1 4 のデータより も時間 a 2だけ遅れて到着 し、 前記第 4 のデータ ( A 1 3 4 ) は時間 a 3 だけ遅れて到着し、 さ らに、 前記 第 3 のデータ ( A 1 2 3 4 ) は時間 a 2 十 a 3 だけ遅れて到着するこ ととなる。 前記ノ ー ド 4 ( N 4 4 ) のタイ 厶ァ ラ イ ナ一はこのよ うな異なる遅延時間を持 つて到達するデータの同期をと り、 各経路から到達したデータのタイ ミ ングを揃 えて、 ミ キサであるノ ー ド 5 ( N 4 5 ) に送出する。 このタイ 厶ァ ラ イ ナーには、 同期をと るべきチ ャ ンネル毎に受信デ一タを格納するバッ ファが設けられており、 対象となる全てのチ ヤ ンネルについて同一のデータマークが付された受信テータ が受信されたと きに、 該同一のデータマークが付された各チ ヤ ンネルのデータを 順次出力するよ う に動作する。 これにより、 ノー ド 1 ( N 4 1 ) からは同じタ イ ミ ン グで出力されたにもかかわらず、 それぞれ異なる遅延時間を持って到着する データのタイ ミ ングを揃えて、 例えば ミ キサとされているノー ド 5 ( N 4 5 ) に 送出する ことができる。
このよ うに構成されたネ ッ ト ワ ーク シス テムにおける各ノ一 ドの動作について、 図 2 2〜図 2 4 を参照してさ らに説明する。
図 2 2 は、 デー 夕を送出するノ ー ド 1 ( N 4 1 ) の動作を説明するためのフ 口 —チ ャー トである。 この図に示すよう に、 ノー ド 】 ( N 4 1 ) では、 同一のフ レ 一ムに送出する送信デ一タに同一のデ一タマークを付加してデ一タパケ ッ トを生 成し (ステッ プ S 7 1 ) 、 それそれ対応するチ ャ ンネルに送出する (ステ ップ S 7 2 ) 。 すなわち、 ノー ド 4 ( N 4 4 ) に直接送信するデータバゲッ トは例えば チ ャ ンネ ル 1 、 ノー ド 2 ( N 4 2 ) に送信すべきデータバゲッ トはチ ャ ンネル 2、 ノー ド 3 ( N 4 3 ) に送信するデータパケ ッ トは例えばチ ヤ ンネル 3 を用い、 同 —のデータマークを付加したパケ ッ トを送信する c
図 2 3 は、 一般の受信ノ一 ド、 例えば、 前記ノ 一 ド 2、 3、 5 ( N 4 2 , N 4 3, N 4 5 ) の動作を示すフ ローチ ャー トである。 この図に示すように、 各受信 ノー ドにおいては、 各チ ャ ン ネルのデータを受信し (ステップ S 8 1 ) 、 铳いて、 この受信したデータが自器において処理すべきデータであるか否かを判定する ( ステ ッ プ S 8 2 ) これは、 データを受信したチ ャ ンネ ルとこのノ ー ドに予め設 定されている処理対象データのチ ヤ ンネルとを比較することにより行うことがで きる。 そ して、 こ の判定の結果、 受信したデータが自器の処理すべきデータであ ると きにはそのデータに対して所定の信号処理、 例えば、 このノー ドが前記ノー ド 2であると き にはリバ一ブ処理、 前記ノー ド 3 である と きはパンニ ング処理、 を施し、 処理が終了したデータを前記ネ ッ ト ワークに送出する (ステップ S 8 3 ) 。 また、 前記ステ ップ S 8 2 の判定の結果、 受信したデータが自機の処理データ ではないと判断されたと きは、 なにも処理を実行せずにそのチヤ ンネルのデ一タ に対する処理を終了する (ス テ ッ プ S 8 4 ) 。
図 2 4 は、 前記タィ ムァラ イ ナー ( ノ ー ド 4 ) ( N 4 4 ) の動作を説明するた めのフローチ ャー トである c このタイ ムァライナーには、 予めユーザ一等によ り、 タイ ミ ングの同期をとるべきチ ャ ンネ ル (同期チ ャ ンネ ル) が設定されている。 この図に示すよ うに、 タ イムァラ イナーにおいては、 データを受信し (ステッ プ S 3 1 ) 、 受信したデータが予め設定されている同期チヤ ンネ ルに S当するチ ヤ ンネ ルであるか否かを判定する ( ステ ッ プ S 3 2 ) 。 この判定の結果、 現在受信 したチ ヤ ンネルが前記同期チ ャ ン ネルに該当しないときには、 なにも処理を行わ ない (ス テ ッ プ S 3 5 ) 。
—方、 受信したチ ヤ ン 不 ルが予め設定されている同期チ ャ ン ネ ルに ¾当する チ ヤ ンネルであると きは、 ステ ッ プ S 3 3 に進み、 当該受信パケ .', 卜に含まれてい るデータマークを確 SSし、 現在受信したチ ャ ンネ ルの他の同期チ ャ ンネ ルの全て のバッ フ ァ に、 同一のデータ マー クが付加されたデータ バケ ツ ト が格納されてい るか否かを判定する。 この判定の結果が Y E Sのとき、 すなわち、 現在受信した チ ャ ンネルが同一のデータマークが付されたデータのう ちの最後に到着したデ一 タである ときは、 ステッ プ S 3 4 に進み、 同期チ ヤ ン ネ ルのバッ フ ァに格納され ている当該データマークが付されているデータを、 チ ャ ンネル番号の小さい順に 出力する。 これにより、 様々な経路を介してこのタ イ ムァライ ナーに到着した同 —のデータマークが付されたデータのタ イ ミ ングを台わせてノー ド 5 ( 4 5 ) に出力するこ とができる。 —方、 全同期チャ ンネ ルについて当該データマークが付されたパケ ッ トがそろ つていないと きは、 前記ステ ッ プ S 3 3 の判定の結果が N 0となり、 該チ ャ ンネ ル用のバッ フ ァに前記受信デ一タを格納する ( ス テ ッ プ S 3 6 ) 。 なお、 遅延時 間の大き さによ っては、 あるフ レームのパケッ トが全て到着しないう ちに、 その 次のフ レームに送出されたチ ャ ン ネルのバケツ トが到着するこ と もあり得るので、 前記バッ フ ァ は、 各チ ャ ンネ ル毎にフ レーム単位でバケ ツ トを格納するこ とがで きるように構成されている。
このよ うに して、 前記タィ ムァライ ナ一において、 異なるタ イ ミ ングで到達す るパケ ッ 卜のタ イ ミ ングを揃える ことができる。
なお、 上述の例においては、 ノ ー ド 4 ( N 4 4 ) はタ イ ムァラ イ ナーの機能の みを有するものと して説明したが、 これに限られるこ とはなく 、 通常のノ一ドに タ イ ムァラ イ ナ一の機能を持たせるよ うにするこ と もでき る。 例えば、 前記ノ一 ド 5 ( N 4 5 ) 内に、 前記タ ィ ムァラ イナ一の機能を含ませるよ うに してもよい。 ただし、 タ イ ムァライ ナーは出カノ一 ドの直前に配置することが望ま しい。
また、 上述の例においては、 予め各ノ ー ドにそのノ ー ドにおいて受信すべきデ 一タが送信されるチ ャ ンネルが設定されている ものと して説明したが、 これに限 られるこ とはなく 、 データパケ ッ ト中にそのデータのデスティ ネー シ ョ ンとなる ノ一ドを指定するデータを含ませておき、 各ノー ドはそのデ一タを判定するこ と によ り 、 受信すべきデータであるか否かを判定するよ うに しても良い π
さ らにまた、 上述の例においては、 1 Ε Ε Ε 1 3 9 4 :こよ り結台されたネ ッ ト ワークを例にと つて説明したが他のィ ンターフヱースによ り構成されたネ ッ ト ヮ ーク の場合にも本発明を適用する ことができる。
さ らにまた、 上述の例においては、 楽音発生装置を例にとって説明したが、 こ れに限られることはなく 、 ネ ッ ト ワー ク上に、 時間軸上での再現性を保証するこ とが必要なデータあるいは同期をとる こ とが必要なデータを送出する埸台に、 本 発明を同様に適用する こ とができるこ とは明らかである。
以上説明したように、 本発明の第 4 の実施例に係るネ ッ トワークデータの同期 方法および装置によれば、 ネ ツ ト ワー ク上の複数の経路を通過してきた時間同期 の必要なデータの同期をとる こ とが可能となる。 上述したすべての実施例は、 ィ ンターネ ッ ト上でオーディオデータやその他の データ (時間軸上での再現性を保証するこ とが必要なデータあるいは同期をとる ことが必要なデータ) を伝送する際にも適用可能であるのは勿論である。
また、 上述したすべての実施例において、 ソフ ト ウ ユアを用いて行なう ことが 説明されているデータ送信及び z又はデータ受信処理に閧して、 そのためのソ フ トウエアプログラムを収納した記憶媒体等のソフ ト ゥ ァ製品も本発明の範囲に 含まれる。

Claims

請 求 の 範 囲
1 . ( a ) 送信側において、
所定の周期の時系列的な配列を持つ複数のデータを供袷するステップと、
2以上の所定数の前記データ毎に 1 つのデータを特定し、 該特定されたデータ の時間位置を示す時間情報を付加するステ ッ プと、
所定数の前記データ及び該デー タの中のいずれかに対して付加された前記時間 情報を 1 ノ、'ケ ッ ト として、 ネ ッ ト ワー ク に送出するス テ ッ プと
を具備し、
( ) 受信側において、
前記ネ ッ ト ワー クを介して前記パケ ッ トを受信するステ ッ プと 、
受信したパケッ トに含まれる前記データを一時 己憶するステ ップと、 前記一時記憶したデータを順次再生読出しするためのステツプであつて、 前 §己 受信したパケ トに含まれる前記時間情報に基づきこの読出しを制御することに よ り 、 前記所定の周期に対応する周期で再生が行われるようにするステツプと を具備する
データ伝送方法。
2 . ( a ) 送信側において、
第 1 の周期の時系列的な配列を持つ複数のデ一タを供袷するステ ツ プと 、
2以上の所定数の前記データ毎に 1 つのデ一タを特定し、 該特定されたデー夕 の時間位匱を示す時間情報を付加するステ ツプと、
前記第 1 の周期より も長い所定の第 2 の周期毎に、 該第 2 の周期の 1 周期內で 供給された前記データ及び該デ一タの中のいずれかに対して付加された前記時間 情報を 1 パケ ッ ト と して、 ネ ッ ト ワー ク に送出する ス テ ッ プと
を具備し、
( ) 受信側において、
前記ネ ッ ト ワー ク を介して前記パケ ツ ト を受信する ステ ッ プと、
受信したパケッ トに含まれる前記デ一タを一時記憶するステ ツプと、 前記一時記億したデ一タを順次再生読出しするためのステッ プであって、 前記 受信したパケッ トに含まれる前記時間情報に基づきこの読出しを制御することに より、 前記第 1 の周期に対応する周期で再生が行われるようにするステ ツブと を具備する
データ伝送方法。
3 . 第 1 の周期の時系列的な配列を持つ複数のデータを供給するステップと、 2以上の所定の定数からなる前記デ一タのグループ毎に該グループ内の 1つの データを特定し、 i亥特定されたデータの時間位置を示す時間情報を付加するステ ッ ブと、
前記第 1 の周期より も長い所定の第 2の周期毎に、 該第 2の周期の 1 周期内で 供給された複数の前記データを 1 パケ ッ ト として、 かつ、 該パケ ト内のデータ の中に前記時間情報が付加されたデータがあれば該時間情報を該パケ ..' トに含め て、 ネ ッ ト ワークを介して送信するステッ プと
を具備するデータ伝送方法。
4 . 送信側装置と受信側装匱との間でネツ トワークを介してデータを伝送する ためのシステムであって、
( a ) 前記送信側装置は、
所定の周期の時系列的な配列を持つ複数のテータを供給する装置と、 2以上の所定数の前記データ毎に 1 つのデータを特定し、 亥特定されたデ ータの時間位置を示す時間情報を付加する装置と、
所定数の前記データ及び該データの中のいずれかに; ¾して付加された前記 時間情報を 1 パケッ トと して、 前記ネ ツ ト ワークに送出する装置と
を含み、
( ) 前記受信側装匱は、
前記ネツ トワークを介して前記パケ ッ トを受信する装置と、
受信したパケッ トに含まれる前記データを一時記憶する装置と、 前記一時記憶したデータを順次再生読出しするための装置であつて、 前記 受信したパケッ トに含まれる前記時間情報に基づきこの読出しを制御することに より、 前記所定の周期に対応する周期で再生が行われるようにするものと を含む。
5 . 送信側装置と受信側装置との間でネ トワ ークを介してデータを伝送する ための システムであって、
( a ) 前記送 ί言側装置は、
第 1 の周期の時系列的な配列を持つ複数のデ一タを供給する装置と、 2以上の所定数の前記データ毎に 1 つのデータを特定し、 ί亥特定されたデ —夕 の時間位置を示す時間情報を付加する装置と、
前圮第〗 の周期よ りも長い所定の第 2の周期毎に、 该第 2の周期の 1周期 内で供袷された前記データ及び該データの中のいずれかに対して付加された前記 時間情報を 1 パケッ トと して、 前記ネ ッ ト ワーク に送出する装置と
を含み、
( ) 前記受信側装置は、
前記ネ ッ ト ワークを介して前記パケ ッ トを受信する装置と、
受信したバケツ 卜に含まれる前記データを一時記億する装置と、 前記一時記憶したデ一タを順次再生読出しするための装置であつて、 前記 受信したパケッ ト に含まれる前記時間情報に基づきこの読出しを制御する ことに より、 前記第 1 の周期に対応する周期で再生が行われるよう にするものと を含む。
6 . 第 1の周期の時系列的な配列を持つ複数のデータを供給する装置と、
2以上の所定の定数からなる前記データのグループ毎に該グループ内の 1 つの データを特定し、 該特定されたデータの時間位置を示す時間情報を付加する装匱 前記第 1 の周期より も長い所定の第 2の周期毎に、 該第 2の周期の 1周期内で 供給された複数の前記データを 1 バケツ ト として、 かつ、 該パケ ' ト内のデータ の中に前記時間情報が付加されたデータがあれば該時間情報を該バケ ッ トに含め て、 ネ ッ ト ワークを介して送信する装置と
を具備するデータ伝送システム。
7 . 機械によって読み取り可能なメディアであって、 データ送信用のコ ン ビュ
—タプロ グラ ムを記述する命令群を內容と して含んでおり、 このデータ送信用の コン ピュータプロ グラムは、 下記のステツブを含む :
所定の周期の時系列的な配列を持つ複数のデータを供袷するステツブと、 2以上の所定数の前記データ毎に 1 つのデータを特定し、 該特定されたデータ の時間位置を示す時間情報を付加するステ ップと、
所定数の前記データ及び該データの中のいずれかに対して付加された前 己時間 情報を 1 パケ ッ ト と して、 ネ ッ ト ワークに送出するステ ッ プ。
8 . 機械によ って読み取り可能なメディ アであって、 データ送信用のコ ンビュ 一タブロ グラムを記述する命令群を內容と して含んでおり、 このデータ送信用の コ ン ピュータプロ グラムは、 下記のステ ッ プを含む :
第 1 の周期の時系列的な配列を持つ複数のデータを供袷するステッ プと、 2以上の所定数の前記デ一タ毎に 1 つのデータを特定し、 该特定されたデ一タ の時間位匱を示す時間情報を付加するステ ップと、
前記第 1 の周期より も長い所定の第 2の周期毎に、 ¾第 2の周期の 1 周期内で 供給された前記データ及び該データの中のいずれかに対して付加された前記時間 情報を 1 パケ ッ ト と して、 ネ ッ ト ワークに送出するステツプ。
9 . 機械によって読み取り可能なメディ アであって、 データ送信用のコ ンビュ 一タブログラムを記述する命令群を内容と して含んでおり、 このデータ送信用の コン ピュータプロ グラムは、 下記のステ ) プを含む :
第 1 の周期の時系列的な配列を持つ複数のデータを供袷するステツブと、
2以上の所定の定数からなる前記データのグループ毎に該グループ内の 1 つの データを特定し、 該特定されたデータの時間位匮を示す時間情報を付加するステ ッブと、 前記第 1 の周期より も長い所定の第 2の周期毎に、 該第 2の周期の 1 周期内で 供給された複数の前記データを 1 バケツ ト と して、 かつ、 該パケッ ト内のデータ の中に前記時間情報が付加されたデ一タがあれば該時間情報を該バケッ トに含め て、 ネ ッ ト ワー クを介して送信するステ ッ プ。
1 0 . 機械によ つて読み取り可能なメディアであって、 ネツ ト ワー クを介して 送信されてく るデータを受信するためのコ ン ビユ ー夕 プロ グラ ムを ΐ己述する命令 群を内容として含んでおり、
前記ネ ツ トワークを介して送信されてく る前記データは、 所定の周期の時系列 的な配列を持つ複数のデータのうち 2以上の所定! ¾のデータ毎に 1 パケッ トのデ —タ グループを成 してお り、 こ の 1 パケ ッ 卜 のデータ グループには少な く と も 1 つの特定のデータの時間位匱を示す時間情報が付加されており、
前記コ ンピュータプロ グラ ムは、 下記のステ ップを含む :
前記ネ ッ トワー クを介して前記バゲ '., トを受信するステ ッ プと、
受信したパケ ッ トに含まれる前記データを一時記憶するステ .'プと、 前記一時記憶したデータを順次再生読出しするためのステツ ブであつて、 前記 受信したパケ ッ トに含まれる前記時間情報に基づき こ の読出しを制御する こ と に より 、 前記所定の周期に対応する周期で再生が行われるようにする ス テツプ。
1 1 . 一定の周期を有する第 1 のタイ ミ ング信号からの差分データと して表わ されたタ ィ ム ス タ ンブが付加された送信データを、 前記第 1 のタ イ ミ ング信号に 準じて発生される第 2のタイ ミ ング信号に基づいて、 ネッ トワーク上に送出する データ送信装匱であって、
F I F 0バッフ ァを有し、
^記第 1 のタイ ミ ング信号に基づいて前記送信データを前記 F I F Oバッフ ァ に害き込み、
前記第 2のタイ ミ ング信号に基づいて前記 F I F 0 バッ フ ァから前記送信デー タを取り出してネ ッ トヮ一ク上に送信することを特徴とするデータ送信装置。
1 2 . —定の周期を有する第 1 のタ イ ミ ング信号からの差分データ と して表わ されたタ イ ム ス タ ンブが付加され、 前記第 1 のダイ ミ ング信号に準じて発生され る第 2のタイ ミ ング信号に基づいてネ ッ ト ワーク上に送信されたデータを受信す るデータ受信装置であつて、
F I F 0バッ フ ァを有し、
前記ネ ッ ト ワークから受信した前記データを前記第 2 のタ イ ミ ング信号に基づ いて前記 F I F 0 バッ フ ァ に書き込み、
前記第 1 のタ イ ミ ング信号に基づいて前記 F I F 0 バッ フ ァ からデータ を取り 出し、
前記タ ィ ム ス タ ンプに基づいて当該データを時間軸上に再現する こ とを特徴と するデー タ受信装置。
1 3 . データ送信装置とデータ受信装置とを有し、 一定の周期を有する第 1 の タイ ミ ング信号に準じて発生される第 2 のタイ Ϊ ング信号に基づいてネ ッ ト ヮー ク上でのデータの転送が制御されるデータ転送シ ステムであって、
前記データ送信装置は、 前記第 1 のタ イ ミ ング信号からの差分データ と して表 わされたタ イ ム ス タ ンブを送信データ に付加し、
前記タ ィ ム スタ ンプが付加された送信データを前記第 1 のタ イ ミ ン グ信号に基 づいて第 1 の F I F 0 バ ッ フ ァ に書き込み、
前記第 2のタイ ミ ング信号に基づいて前記第 1 の F I F 0ハ ツ フ ァから前記送 信データを取り出してネ ッ ト ワー ク上に送信し、
前記データ受信装置は、 前記第 2のタィ ミ ング信号に基づいて前記ネ ッ ト ヮ一 ク上に送信されたデータを第 2 の F I F 0 バッ フ ァ に害き込み、
前記第 1 のタ イ ミ ング信号に基づいて前き己第 2 の F I F 0バッ フ ァから受信し たデータを取り出し、
前記タィムスタ ンプに基づいて当該データを時間軸上に再現するこ とを特徴と するデータ転送システム。
1 . ネッ ト ワークを介在させてデータ送信側とデータ受信側との間でデー夕 を伝送する方法であって、
( a ) 前記データ送信側において、
一定の周期を有する第 1 のタ イ ミ ング信号の発生時点からの差と して表 わされたタ イ ム ス タ ンプ情報を送信すべきデータ に付加する ス テ ッ プと、
前記タ ィ ムスタ ンプ情報が付加された送信データを前記第 1 のタ イ ミ ン グ信号に基づいて第 1 のバッ フ ァ に書き込むステ ップと、
前記第 1 のタイ ミ ング信号に準じて第 2 のタ イ ミ ング ί言号を発生する ス テツ プと、
前記第 2 のタ イ i ング信号に基づいて前記第 1 のバ ン フ ァから前記送信 デー タを取り出して前記ネ ッ ト ワー ク に送信する ステ ッ プと
を具備し、
( b ) 前記デ一タ受信側において、
前記ネ ッ ト ワークからデータを受信し、 この受信データを前記第 2 のタ ィ ミ ング信号に基づいて第 2 のバ ッ フ ァ に書き込むス テ > プと 、
前記第 1 のタイ ミ ング信号と同じ周期を有する第 3 のタ イ ミ ソグ信号に 基づいて前記第 2 のパッ フ ァから受信データを取り出すス テ ッ プと、
取り出した受信データに付加された前記タ ィ ム ス タ ンプ情報に基づいて 前記テー タを時間軸上に再現する ステ ッ プ
とを具備するデータ伝送方法。
1 5 . 機械によ つて読み取り可能なメ デ ィ アであ って、 データ送信用のコ ン ピ ユータプログラムを記述する命令群を内容と して含んでおり、 このデータ送信用 のコ ン ピュータプロ グラ ムは、 下記のステ ッ プを含む :
一定の周期を有する第 1 のタ イ ミ ング信号の発生時点からの差と して表 わされたタ イ ムス タ ンブ惰報を送信すべきデ一タ に付加するステ ップと、
前記タィ ムスタ ンプ情報が付加された送信データを前記第 1 のタ イ ミ ン グ信号に基づいて第 1 のバッ フ ァ に害き込むス テ ッ プと、
前記第 1 のタ イ ミ ン グ信号に準じて第 2 のタ イ ミ ング信号を発生する ス テツ プと、
前記第 2 のタイ ミ ング信号に基づいて前記第 1 のバッ フ ァから前記送信 データを取り出してネ ッ トワーク に送信するステ ツブ。
1 6 . 講求項 1 5 に記載された機械によ つて読み取り可能なメ ディ ァであって . 更に、 データ受信用のコ ンピュータブロ グラムを記述する命令群を内容と して含 んでおり、 このデータ受信用のコ ン ピュータプロ グラ ムは、 下記のステッ プを含 む :
前記ネ ッ ト ワークからデータを受信し、 この受信データを前記第 2の夕 ィ ミ ング信号に基づいて第 2 のバ ッ フ ァ に書き込むス テ ッブと、
前記第 1 のタイ ミ ン グ信号と同じ周期を有する第 3 のタ イ ミ ング信号に 基づいて前記第 2 のバッ フ ァから受信データを取り出すステツ プと、
取り出した受信データに付加された前記タィ ムス タ ンプ情報に基づいて 前記データを時間軸上に再現するステツプ。
1 7 . 名目上定められたサイ タ ルと該サイ クル毎に確保されている帯域を使用 してサイ ク ルス タ ー ト '、'ケ ッ I- に続いてデータ を f云送するアイ ソ ク ロ ナ ス通信と、 前記サィ クルの周期の内残された周期を利用してデータを ί云送する非同期バケ .). ト通信とを行う通信方式におけるテー タ転送方式であ って、 こ こ において、 前記 アイ ソ ク ロナ ス通信の所要周期と、 前記非同期パケ ト通 ί言の所要周期とを加算 した周期が前記サィ クルの周期を越えるこ とが可能と されており、
再生時点を定める再生用タ ィ ム スタ ンプの付与された前記デー タを受信したと きに、 該データが厲するサイ ク ルスター ト パケ ッ トを基準として前記受 (首された データが遅延している遲延時間を検出し、
該サイ クルス タ ー ト バケ ツ トが属するサ イ ク ルのス ター ト時刻に、 前記サイ ク ルの 1 周期時間および前記検出された遅延時間を加算した時刻を転送用タ ィム ス タ ンブと して、 前記受信されたデータ に付与し、
該転送用タ イ ム ス タ ンプの時刻に達したとき、 あるいは越えたと き に、 前記受 信されたデータの転送準備を行う こと を特徴とするデータ転送方式。
1 8 . ネ ッ ト ワーク に挿入配置されたブ リ ッ ジ力 i'、 あるセグメ ン トから前 己デ -タを受信し、 該プリ ッ ジは、 前記転送用タ イ ム スタ ンプの時刻に達したとき、 あるいは越えたときに、 前記受信されたデータを待機用バッフ ァ に追加し、 所定 のサ イ ク ルス ター トパケ ッ トが異なるセグメ ン トに送出されたときに、 前記待機 用バ ン フ ァから送信バ ッ ファに前記受信されたデータを追加して、 前記異なるセ グメ ン ト に前記受信されたデータ を送信する こ と を特徴とする睛求項〗 7 に記載 のデータ転送方式。
1 9 . 前記再生用タィ ムス タ ンプが前記サイ ク ル内の相対的タ イ ム ス タ ンプと されており、 該再生用タ イ ム ス タ ンプが前記受信されたデータ に先行するサイ ク ルスター トパケ ッ トが厲するサイ ク ルのス ター ト時刻に、 前記サィ ク ルの 1周期 時間が加算された新たなタ イ ム ス タ ンプに置き換えられ、 亥新たなタ イ ム スタ ン ブの時刻に達したとき、 あるいは越えたときに前記受信データの再生処理を行う ことを特徴とする請求項 1 7 に記載のデータ転送方式。
2 0 . 機械によって読み取り可能なメディアであって、 名目上定められたサイ クルと ΐ亥サイ ク ル毎に確保されている帯域を使用してサイ ク ルス ター 卜バケツ ト に続いてデータを伝送するアイ ソ クロナス通信と、 前記サ イ ク ルの周期の内残さ れた周期を利用してデータを伝送する非同期パケ ッ ト通信とを行う通信方式にお けるデータ転送処理用のコンピュータ プロ グラ ムを記述する命令群を内容として 含んでおり、 ここにおいて、 前記アイ ソ ク ロナス通信の所要周期と、 前記非同期 パケッ ト通信の所要周期とを加算した周期が前記サィ ク ルの周期を越えることが 可能とされており、 このデータ転送処理用のコ ン ピュータ プロ グラムは、 下記の ステ ツブを含む :
再生時点を定める再生用タィ ム スタ ンプの付与された前記データを受信したと きに、 該データが属するサイ クルスター トパケッ トを基準として前記受信された データが ¾延している遅延時間を検出するステツプ、 該サイ ク ス タ ー ト パケ ッ トが厲するサイ ク ルのス ター ト時亥 liに、 前記サィ ク ルの 1 周期時間および前記検出された遅延時間を加算した時刻を転送用タ ィ ムス ク ンブと して、 前記受信されたデータに付与するステ ツプ、
該転送用タ イ ムスタ ンプの時刻に達したとき、 あるいは越えたときに、 前記受 信されたデータの転送準備を行う ステ ツ プ。
2 1 . 複数のノ一ドが接続されたネ ッ ト ワーク上に転送されるデータの同期方 法であつて、
同期をとる ことが要求される複数のデータを送出するノ一ドは、 亥複数のデー 夕に所定のデータマークを付加して前記ネ ", ト ワ ーク に送出し、
前記ネ ト ワークからデータを受信したノ ー ドは、 前記デ一タマー クを参照す るこ とにより当該複数の受 ί言データの同期をとるよ う になされている こと を特徴とするネ ッ ト ワー ク データ の同期方法。
2 2 . 複数のノー ドが接続されたネ ッ ト ワー ク上に転送される複数のデータの 同期装置であつて、
前記ネ ッ ト ワークから受信したデータ中に含まれているデータマークに基づい て、 同一のデータマークが付加されている複数の受信データの同期をとるように なされている ことを特徴とするネ ッ ト ワ ー クデー タの同期装置:
2 3 . ネ ッ ト ワークに接統されたノ一ドであって、 前記請求項 1 8 に記載のネ ッ ト ワークデータの同期装置の機能を有することを特徴とするノ ー ド。
2 4 . 機械によ って読み取り可能なメディアであって、 複数のノー ドが接続さ れたネ ッ トヮーク上に転送されるデータの同期方法を実行するためのコ ンピュー タプログラムを記述する命令群を内容と して含んでおり、 この同期方法は、 下記 のス テ ツ プを含む :
同期をとる ことが要求される複数のデータを送出するノー ド 、 該複数のデー タに所定のデータマークを付加して前記ネ ツ ト ワーク に送出するステ ップと、 前記ネ ッ ト ワークからデータを受信したノ ー ドは、 前記データマ一クを参照す るこ とにより当該複数の受信データの同期をとる ステ ツプ。
補正書の請求の範囲
! 1 9 9 7年 1 0月 1 3日 (1 3 . 1 0 . 9 7 ) 国際事務局受理:出願当初の請求の範囲 1 1 - 1 3及び 2 3は補正された;新しい請求の範囲 2 5 - 2 7が加えられた:他の請求 の範囲は変更なし。 (4頁) ]
前記第 1 の周期より も長い所定の第 2 の!]期毎に、 ^第 2 の周期の 1 周期内て «袷された複数の前 己データを 1 バケツ ト として、 かつ、 ^パケ -' ト内のテータ の中に前記時間情報が付加されたテータがあれば^時間情報を^ '、'ケ トに含め て、 不 ッ ト ワ ー クを介して送信する ス テ ッ プ。
I 0 . 械によ つて読み取り可能なメ ディ アであっ て、 不 ッ ト ワークを介して 送信されてく るデータを受信するためのコ ン ビユ ータブロ グラ 厶を 己述する命令 群を内容と して含んでおり、
前圮ネ ト ワークを介して送 if されてく る 己データは、 所定の周期の時系列 的な配列を持つ複数のテ一 '?の う ち 2 以上の所定 ¾のチ一 タ毎に ! ハ' トのテ' 一タ グループを成しており 、 この I パケ ·, 卜のデータ グルーフ'には少な く と も 1 つの特定のデータの時間位置を示す時閉情報が付加されており 、
前圮コ ンビュータブロ グラ ムは、 下圮のステツ ブを含む :
莳圮ネ '., ト ワ ー クを介して前纪パケ ト を受信する ステ ッ プと、
受信した ケッ トに含まれる前記データを一時 S己愴するステ ッ プと、
莳圮一時 したデータを順次再生 ¾出しするためのステ ブであつて、 前圮 受信したパケ .', トに含まれる前記時間情報に Sづきこの铳出しを制御する ことに よ り 、 莳圮所定の周期に 応する 131期て再生が行われるよ う にする ス テ ·, フ'。
I 1 . 正後) 一定の周期を有する第 1 のタ イ Ϊ ン グ ft号からの差分テータ と して表わされたタイ ム スタ ンプが付加された送信データを、 前記第 1 のタイ i ング信号に Φじて発生される第 2 のタ イ ミ ング信号に基づいて、 不 ッ ト ワーク上 に送出するデータ送信装置であって、
バ ··/ フ ァを有し、
前 K第 1 のタイ ミ ング信号に基づいて前圮送信データを前圮ハ に害き込 み、
莳圮第 2 のタイ ミ ング信号に基づいて前 S己バ'ッ フ ァから前記送信データを取り 出してネ ッ ト ヮーク上に送信する ことを特徴とするデータ送信装置。
- 67 - 補正された用紙 (条約第 19条)
1 2 . (補正後) 一定の周期を有する第 1 のタイ ミ ング if号からの差分データ として表わされたタ イ ム ス タ ンプが付加され、 前き己第 1 のタイ ミ ング信号に準じ て発生される第 2 のタイ ミ ング信号に基づいてネ ッ ト ワ ー ク上に送信されたデー 夕を受信するデータ受信装置であ って、
バッ フ ァを有し、
前記ネ '., ト ワークから受信した前記データを前記第 2 のタイ ミ ング信号に基づ いて前記バッ ファに害き込み、
前圮第 1 のタイ ミ ング信号に基づいて前記バ ソ フ ァ からデ一タを取り出し、 前 己タ ィム スタ ンプに基づいて当該データを時間铀上に再現することを特徴と するデータ受信装置。
1 3 . (補正後) データ送信装置とデータ受信装置とを有し、 一定の周期を有 する第 1 のタ イ ミ ング信号に準じて発生される第 2のタイ ミ ン グ信号に基づいて ネッ ト ワーク上でのデータの転送が制御されるデータ転送シス テムであって、 前圮データ送信装 Sは、 前き己第 1 のタ イ ミ ング信号からの差分データ と して表 わされたタ イ ムス タ ンブを送信データ に付加し、
前紀タ ィ ム スタ ンプが付加された送 ί言データを前き己第 1 のタ イ ミ ン グ信号に基 づいて第 1 のバッ フ ァ に害き込み、
前妃第 2 のタ イ ミ ン グ ft号に基づいて前記第 1 のバ ッ フ ァから前記送信デー タ を取り出してネ ツ トワーク上に送信し、
前 s己データ受信装 aは、 前圮第 2のタイ ミ ング信号に基づいて前記ネ ッ ト ヮ一 ク上に送信されたデータを第 2 のバッ フ ァ に害き込み、
前 S己第 1 のタイ ミ ング信号に基づいて前記第 2 のバッ フ ァから受信したデータ を取り出し、
前 S己タ ィム スタ ンブに基づいて当該データを時間軸上に再現するこ とを特徴と するデータ 15送シ ステム。
- 68 - 補正された用紙 (条約第 19条) 該サイ ク ルス ター トバゲッ トが厲するサ イ ク ルのス ター ト時刻に、 前記サィ ク ルの 1 周期時間および前記検出された遅延時間を加算した時刻を転送用タィム ス クンブと して、 前記受信されたデータに付与するステ ツ プ、
該 *£送用タ イ ム ス タ ンプの時刻に達したとき、 あるいは越えたときに、 前記受 信されたデータの転送準備を行ぅ ステ ツ プ。
2 1 . 複数のノ―ドが接続されたネ ッ ト ワーク上に転送されるデータの同期方 法であつて、
同期をとることが要求される複数のデータを送出する ノ 一 ドは、 该複数のデー タに所定のデータマークを付加して前 S己ネ ッ ト ワ ーク に送出し、
前圮ネ ッ ト ワー クからデ一 タを受信したノ ー ドは、 前記デ一 タマー クを参照す ることにより当該複数の受信データの同期をとるようになされていること を特徴とするネ ッ ト ワークデータ の同期方法。
2 2 . 複数のノ ー ドが接続されたネ ッ ト ワーク上に 送される複数のデータの 同期装置であって、
前 S己ネ ッ ト ワークから受信したデータ中に含まれているデータマークに基づい て、 同一のデータマークが付加されている複数の受信データの同期をとるように なされていることを特徴とするネ ッ ト ワークデータの同期装置。
2 3 . (補正後) ネ ッ ト ワーク に接続されたノ一 ドであ つ て、 前記謓求項 2 2 に 2己載のネ ッ ト ワークデータの同期装匿の機能を有することを特徴とするノ ー ド。
2 4 . 機械によ つて読み取り可能なメ ディ ァであって、 複数のノー ドが接統さ れたネ ッ トワーク上に転送されるデータの同期方法を実行するためのコ ン ビユー タブ口グラムを圮述する命令群を内容と して含んでおり、 この同期方法は、 下ま己 のス テ ツ ブを含む :
同期をとることが要求される複数のデータを送出するノ ー ドは、 該複数のデ一 クに所定のデータ マーク を付加して前 S己ネ ", ト ワ ーク に送出する ステ ッブと、
- 69 - 補正された用紙 (条約第 19条) 前記ネ ト ワークからデータを受信したノー ドは、 前圮データマークを参照す ることにより当該複数の受信データの同期をとるステップ。
2 5 . (追加) 育求項 1 1 に 己載されたデータ送信装置において、 前記バ フ ァ が F I F Οバッ フ ァからなる。
2 6 . (追加) I育求項 1 2に記載されたデータ受信装置において、 前 Ϊ己バツフ ァ が F I F 0バッ フ ァ力、らなる。
2 7 . (追加) iS求項 1 3にき己載されたデータ耘送システムにおいて、 前記第 1 及び第 2 のバッ フ ァがそれぞれ F I F 0バッフ ァからなる。
- 70 - 補正された用紙 (条約第 19条)
PCT/JP1997/001541 1996-05-07 1997-05-07 Procede et dispositif de transmission de donnees WO1997042734A1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE69735415T DE69735415T2 (de) 1996-05-07 1997-05-07 Verfahren und System zur Übertragung von Audiodaten mit Zeitstempel
EP97918381A EP0895378B1 (en) 1996-05-07 1997-05-07 Method and system for transmitting audio data with time stamp
AU26514/97A AU2651497A (en) 1996-05-07 1997-05-07 Method and system for transmitting data

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
JP13762396A JP3317140B2 (ja) 1996-05-07 1996-05-07 データ伝送方式
JP8/137623 1996-05-07
JP20098896A JP3309722B2 (ja) 1996-07-12 1996-07-12 データ転送方式
JP8/200989 1996-07-12
JP20098996A JP3440704B2 (ja) 1996-07-12 1996-07-12 データ送受信装置およびデータ転送システム
JP8/200988 1996-07-12
JP35465596A JP3201298B2 (ja) 1996-12-20 1996-12-20 ネットワークデータの同期方法および装置、同期ノード、並びに、ネットワークシステム
JP8/354655 1996-12-20

Publications (1)

Publication Number Publication Date
WO1997042734A1 true WO1997042734A1 (fr) 1997-11-13

Family

ID=27472078

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1997/001541 WO1997042734A1 (fr) 1996-05-07 1997-05-07 Procede et dispositif de transmission de donnees

Country Status (5)

Country Link
US (1) US6477181B1 (ja)
EP (1) EP0895378B1 (ja)
AU (1) AU2651497A (ja)
DE (1) DE69735415T2 (ja)
WO (1) WO1997042734A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0942556A2 (en) * 1998-03-12 1999-09-15 Sony Corporation Synchronizing method and bridge
DE19813551A1 (de) * 1998-03-27 1999-09-30 Grundig Ag Verfahren zur Übertragung von zeitkritischen Datenpaketen in digitalen drahtlosen Übertragungssystemen
WO1999059391A2 (en) * 1998-05-11 1999-11-18 Digital Harmony Technologies, L.L.C. Method and apparatus for data sample clock recovery
DE202011110955U1 (de) 2010-05-10 2017-09-20 Flooring Industries Limited, Sarl Fußbodenpaneel

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6680944B1 (en) 1998-03-09 2004-01-20 Sony Corporation Apparatus for and method of predictive time stamping of isochronous data packets transmitted over an IEEE 1394-1995 serial bus network
JP3651326B2 (ja) 1999-09-06 2005-05-25 松下電器産業株式会社 データ送信装置およびデータ受信装置
US6628697B1 (en) * 1999-10-21 2003-09-30 Cisco Technology, Inc. Subscriber unit ranging in a point to multipoint system
US7054268B1 (en) * 2000-02-04 2006-05-30 Nokia Mobile Phones, Inc. Method and arrangement for transferring information in a packet radio service with application-based choice of release mode
TW582015B (en) * 2000-06-30 2004-04-01 Nichia Corp Display unit communication system, communication method, display unit, communication circuit and terminal adapter
DE10037360A1 (de) * 2000-07-31 2002-03-14 Siemens Ag Verfahren zum Betreiben eines Teilnehmers in einem Netzwerk sowie Teilnehmer für ein Netzwerk und Speichermedium mit einem Programm für einen derartigen Teilnehmer
US7114019B2 (en) * 2000-09-08 2006-09-26 Standard Microsystems Corporation System and method for data transmission
JP3622685B2 (ja) * 2000-10-19 2005-02-23 セイコーエプソン株式会社 サンプリングクロック生成回路、データ転送制御装置及び電子機器
JP4097891B2 (ja) * 2000-11-27 2008-06-11 三菱電機株式会社 Ieee1394を用いた同期システム
JP2002165148A (ja) * 2000-11-29 2002-06-07 Sony Corp データ処理装置および方法、並びに記録媒体
DE10108551A1 (de) * 2001-02-22 2002-09-12 Siemens Ag Jitter Korrektur bei Multiplexing
US7483433B2 (en) * 2001-09-17 2009-01-27 Foundry Networks, Inc. System and method for router data distribution
US7020795B2 (en) * 2001-12-19 2006-03-28 Faraday Technology Corp. Operating method for detecting and solving underflow and overflow by using oversampling
KR100780155B1 (ko) * 2001-12-20 2007-11-27 엘지노텔 주식회사 제어국과 기지국간 전달 채널에 대한 동기 유지 방법
GB0205142D0 (en) * 2002-03-05 2002-04-17 Nokia Corp Synchronisation in communication systems
US7236453B2 (en) * 2002-06-27 2007-06-26 Jeremy Benjamin, Trustee High available method for border gateway protocol version 4
US7519728B1 (en) * 2002-07-18 2009-04-14 Juniper Networks, Inc. Merge systems and methods for transmit systems interfaces
US6871312B2 (en) * 2002-08-27 2005-03-22 Spirent Communications Method and apparatus for time stamping data
JP3960278B2 (ja) * 2003-08-13 2007-08-15 ヤマハ株式会社 接続設定プログラム
JP3673268B1 (ja) * 2004-02-05 2005-07-20 シャープ株式会社 ジッタ補正装置
JP4059857B2 (ja) * 2004-03-02 2008-03-12 富士通株式会社 伝送装置及び伝送方法
EP2410681A3 (en) 2005-03-31 2012-05-02 Yamaha Corporation Control apparatus for music system comprising a plurality of equipments connected together via network, and integrated software for controlling the music system
US20070058766A1 (en) * 2005-09-14 2007-03-15 Tellabs Operations, Inc. Methods and apparatus for recovering serial data
US8121111B2 (en) * 2007-03-29 2012-02-21 Verizon Patent And Licensing Inc. Method and system for measuring latency
WO2008135975A2 (en) 2007-05-02 2008-11-13 Visonic Ltd. Wireless communication system
JP4372804B2 (ja) * 2007-05-09 2009-11-25 トヨタ自動車株式会社 画像処理装置
US8699351B2 (en) * 2009-12-04 2014-04-15 At&T Intellectual Property I, L.P. Method and system for detecting audio and video synchronization
CN102484548B (zh) * 2010-07-07 2015-05-13 华为技术有限公司 用于周期性时间戳传输的设备、网络组件及方法
US10396865B2 (en) * 2015-03-19 2019-08-27 Commscope Technologies Llc Spectral analysis signal identification
US20180203666A1 (en) * 2015-07-21 2018-07-19 Sony Corporation First-in first-out control circuit, storage device, and method of controlling first-in first-out control circuit
DE102016105328B4 (de) * 2015-11-20 2017-09-21 Preh Gmbh Gegenüber eingestreuter Störung robustere serielle Datenkommunikation
JP6919596B2 (ja) * 2018-03-01 2021-08-18 オムロン株式会社 計測システムおよび方法
DE102018207775B4 (de) 2018-05-17 2020-01-30 Siemens Healthcare Gmbh Verfahren zur isochronen Kommunikation in einer Gesamtvorrichtung, insbesondere Magnetresonanzeinrichtung, und Gesamtvorrichtung
EP3674824B1 (de) 2018-12-28 2023-08-23 Siemens Aktiengesellschaft Verfahren zum betrieb eines kommunikationssystems zur übermittlung zeitkritischer daten und kommunikationsgerät

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63136859A (ja) * 1986-11-28 1988-06-09 Fujitsu Ltd パケツト交換機
JPH025660A (ja) * 1988-06-24 1990-01-10 Nippon Telegr & Teleph Corp <Ntt> 映像パケット音声パケット同期転送制御方式
JPH0537548A (ja) * 1991-08-02 1993-02-12 Fujitsu Ltd 多重stm/atm変換方式
JPH0630047A (ja) * 1992-07-10 1994-02-04 Matsushita Electric Ind Co Ltd パケット遅延変動制御回路
JPH07336354A (ja) * 1994-06-06 1995-12-22 Oki Electric Ind Co Ltd Stmデータ/atmセル変換方法及び装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS602992A (ja) 1983-06-20 1985-01-09 ヤマハ株式会社 電子楽器
GB2177877A (en) * 1985-07-13 1987-01-28 Stc Plc Packet systems
JP2538921B2 (ja) 1987-06-02 1996-10-02 日本放送協会 音楽演奏情報伝送方法および送信装置と受信装置
JPS63306740A (ja) 1987-06-08 1988-12-14 Nippon Telegr & Teleph Corp <Ntt> パケット通信方式
US5559962A (en) * 1989-10-09 1996-09-24 Yamaha Corporation Data transmission system selecting both source and destination using addressing mechanism
JPH03133233A (ja) 1989-10-19 1991-06-06 Mitsubishi Electric Corp 音声パケット化装置
JP2878805B2 (ja) * 1990-08-20 1999-04-05 株式会社東芝 Atm交換機
EP0485971B1 (en) * 1990-11-14 1998-02-18 Fujitsu Limited Delay distortion supressing system for ATM communication system
JP2861515B2 (ja) 1991-07-29 1999-02-24 日本電気株式会社 パケット網における送受信間クロック同期方式及びクロック同期装置
JPH05244187A (ja) * 1992-02-14 1993-09-21 Nippon Telegr & Teleph Corp <Ntt> 装置内監視方法
JP3077406B2 (ja) 1992-08-18 2000-08-14 ヤマハ株式会社 楽音情報記録/再生システムおよび楽音情報処理装置
JPH06169320A (ja) * 1992-10-02 1994-06-14 Toshiba Corp Atmセル化装置
JP3227850B2 (ja) * 1992-12-07 2001-11-12 ヤマハ株式会社 マルチアクセス型lan
JP2661508B2 (ja) 1993-06-29 1997-10-08 ヤマハ株式会社 電子楽器の楽音制御データ通信方式
JPH0759053A (ja) 1993-08-11 1995-03-03 Toshiba Corp 画像・音声パケット受信装置および送信装置とそれらを用いた画像・音声パケット伝送装置
JP2830766B2 (ja) 1994-02-24 1998-12-02 ヤマハ株式会社 ネットワーク構築方法
JP2773648B2 (ja) 1994-06-17 1998-07-09 ヤマハ株式会社 電子楽器及び自動演奏装置
JP3371174B2 (ja) * 1994-09-22 2003-01-27 ソニー株式会社 パケット受信装置
JP3133630B2 (ja) 1994-11-30 2001-02-13 三洋電機株式会社 Mpegシステムデコーダ
US6324179B1 (en) * 1994-12-21 2001-11-27 Lucent Technologies Inc. ATM network arranged to interface with STM in-band signaling
DE69529478T2 (de) * 1995-04-15 2003-10-09 Ibm Sdh/sonet-interface
JP3133233B2 (ja) 1995-07-06 2001-02-05 株式会社ユニシアジェックス ステップモータの駆動制御方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63136859A (ja) * 1986-11-28 1988-06-09 Fujitsu Ltd パケツト交換機
JPH025660A (ja) * 1988-06-24 1990-01-10 Nippon Telegr & Teleph Corp <Ntt> 映像パケット音声パケット同期転送制御方式
JPH0537548A (ja) * 1991-08-02 1993-02-12 Fujitsu Ltd 多重stm/atm変換方式
JPH0630047A (ja) * 1992-07-10 1994-02-04 Matsushita Electric Ind Co Ltd パケット遅延変動制御回路
JPH07336354A (ja) * 1994-06-06 1995-12-22 Oki Electric Ind Co Ltd Stmデータ/atmセル変換方法及び装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP0895378A4 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0942556A2 (en) * 1998-03-12 1999-09-15 Sony Corporation Synchronizing method and bridge
EP0942556A3 (en) * 1998-03-12 2004-01-07 Sony Corporation Synchronizing method and bridge
DE19813551A1 (de) * 1998-03-27 1999-09-30 Grundig Ag Verfahren zur Übertragung von zeitkritischen Datenpaketen in digitalen drahtlosen Übertragungssystemen
DE19813551C2 (de) * 1998-03-27 2000-03-23 Grundig Ag Verfahren zur Übertragung von zeitkritischen Datenpaketen in digitalen drahtlosen Übertragungssystemen
WO1999059391A2 (en) * 1998-05-11 1999-11-18 Digital Harmony Technologies, L.L.C. Method and apparatus for data sample clock recovery
WO1999059391A3 (en) * 1998-05-11 2001-03-22 Digital Harmony Technologies L Method and apparatus for data sample clock recovery
DE202011110955U1 (de) 2010-05-10 2017-09-20 Flooring Industries Limited, Sarl Fußbodenpaneel
DE202011110954U1 (de) 2010-05-10 2017-09-20 Flooring Industries Limited, Sarl Fußbodenpaneel
DE202011110959U1 (de) 2010-05-10 2017-09-29 Flooring Industries Limited, Sarl Fußbodenpaneel
DE202011110960U1 (de) 2010-05-10 2017-10-19 Flooring Industries Limited, Sarl Fußbodenpaneel

Also Published As

Publication number Publication date
AU2651497A (en) 1997-11-26
EP0895378A1 (en) 1999-02-03
DE69735415D1 (de) 2006-05-04
EP0895378A4 (en) 2002-04-17
US6477181B1 (en) 2002-11-05
DE69735415T2 (de) 2006-09-28
EP0895378B1 (en) 2006-03-08

Similar Documents

Publication Publication Date Title
WO1997042734A1 (fr) Procede et dispositif de transmission de donnees
US6934287B2 (en) Packet handler of audio data by isochronous mode
US5923902A (en) System for synchronizing a plurality of nodes to concurrently generate output signals by adjusting relative timelags based on a maximum estimated timelag
JP3516206B2 (ja) データストリーム処理装置および方法、並びにプログラム格納媒体
US8005939B2 (en) Method for transporting digital media
JP3687188B2 (ja) パケット伝送方法
JP3371174B2 (ja) パケット受信装置
KR960705456A (ko) 신호 처리 시스템(Signal processing system)
JP2002185440A (ja) 通信方法、通信システム及び通信プログラムを記録した記録媒体
JP3702261B2 (ja) タイムスタンプ補正回路および補正方法
JP3861873B2 (ja) 音楽システム及び音楽データ送受装置
JP3317140B2 (ja) データ伝送方式
US6525253B1 (en) Transmission of musical tone information
JP3451971B2 (ja) パケット転送装置
JP3440390B2 (ja) 等時性保証型連続メディア伝送装置及び等時性保証型連続メディア伝送方法及び受信装置
JPH0630043A (ja) 音声パケット通信方式
JP3309722B2 (ja) データ転送方式
JP3278794B2 (ja) 分散型実時間連続メディア処理装置
JP3201298B2 (ja) ネットワークデータの同期方法および装置、同期ノード、並びに、ネットワークシステム
JP3977124B2 (ja) データ伝送方式
JPH11341056A (ja) 多重化装置
WO2023238907A1 (ja) メディア伝送システム、送信装置、送信システム、受信装置及び受信システム
JPH10313448A (ja) 動画像送信装置および受信装置
JP3496562B2 (ja) パケット転送装置
JP2000278277A (ja) パケット転送装置

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AU CN KR SG US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1997918381

Country of ref document: EP

Ref document number: 09194520

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 1997918381

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 1997918381

Country of ref document: EP