CA2330970A1 - Method and apparatus for low jitter clock recovery - Google Patents

Method and apparatus for low jitter clock recovery Download PDF

Info

Publication number
CA2330970A1
CA2330970A1 CA002330970A CA2330970A CA2330970A1 CA 2330970 A1 CA2330970 A1 CA 2330970A1 CA 002330970 A CA002330970 A CA 002330970A CA 2330970 A CA2330970 A CA 2330970A CA 2330970 A1 CA2330970 A1 CA 2330970A1
Authority
CA
Canada
Prior art keywords
time stamp
cycle
cycle time
operable
coupled
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
CA002330970A
Other languages
French (fr)
Inventor
Robert W. Moses
Allen R. Goldstein
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DIGITAL HARMONY TECHNOLOGIES Inc
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Publication of CA2330970A1 publication Critical patent/CA2330970A1/en
Abandoned legal-status Critical Current

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • G06F9/30189Instruction operation extension or modification according to execution mode, e.g. mode flag
    • 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/40117Interconnection of audio or video/imaging devices
    • 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 stream to a specific local network, e.g. a Bluetooth® network
    • H04N21/43632Adapting the video stream to a specific local network, e.g. a Bluetooth® network involving a wired protocol, e.g. IEEE 1394

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Stored Programmes (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Picture Signal Circuits (AREA)
  • Digital Computer Display Output (AREA)
  • Information Transfer Systems (AREA)
  • Small-Scale Networks (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

A method and apparatus is described for reducing jitter in data sample clock rates recovered from isochronous streams of data packets having associated time stamp values, such as in an IEEE 1394 bus-interconnected system. Jitter associated with variations in the free running quartz-driven PHY clocks is reduced by instead driving local PHY clocks with a phase-locked loop circuit referenced to the Link cycle-out pin, which toggles when the cycle time register cycle-offset field wraps and the cycle-count field increments.
Because the cycle-out pin toggles at a frequency proportional to the cycle master's PHY clock, jitter associated with local PHY clock variations is reduced. Jitter associated with quatization noise from finite length time stamp generation is reduced by dithering and noise shape filtering conventional time stamps. This decorrelates the jitter and shifts the associated noise out of the expected frequency band of the sample clock signal to be recovered.

Description

WO 99/59047 ~ PCT/US99/10226 METHOD AND APPARATUS FOR
LOW JITTER CLOCK RECOVERY
s The present invention relates generally to bus system architecture and, more particularly, to a method and apparatus for reducing fitter in isochronous communications clock recovery.
io BACKGROUND
Today's consumer electronic devices are increasingly being implemented as special-purpose computer systems, complete with processor, memory, and v0 functionality. The various companies who design and manufacture these devices may have their own particular interconnect technology and ~s communication protocols. Consequently, compatibility problems can occur when connecting devices made by different manufacturers. In home entertainment systems, for example, a DVD player manufactured by one company may be incompatible with an audio speaker subsystem manufactured by another company.
To facilitate today's increasingly complex communication between 2o electronic devices, various standards have been developed. In particular, the IEEE
1394 standard for a High Performance Serial Bus (also known as the "FireWire"
bus) has been established to facilitate the development of compatible consumer electronics devices. In addition to defining a standard bus communications protocol, the FireWire bus architecture also provides for standard connections, with each 2s interconnected device being able to communicate with every other such device without requiring individual point-to-point connections between the various devices.
SUBSTITUTE SHEET (RULE 26) The IEEE 1394 standard (IEEE 1394-1995 and IEEE 1394a supplement) is entitled "Standard for a High Performance Serial Bus," and is based on the ISO/IEC

(ANSUIEEE 1212) specification, entitled "Informarion technology-Microprocessor systems-Control and Status Registers (CSR) Architecture for microcomputer s buses."
Referring to Figure 1, a typical home entertainment system 100 is depicted. The system includes a high speed bus, such as an IEEE 1394 bus 102, that interconnects a variety of electronic devices. The particular configurarion depicted is intended solely to show the functional interconnection of representative devices.
io Those skilled in the art understand that FireWire bus architecture supports tree and daisy chain connection configurations.
A DVD player 104 is included for playing DVD disks and correspondingly outputting audio and MPEG video data streams on the 1394 bus 102.
The audio and video data streams are transported aver isochronous channels of the ~s 1394 bus 102, with a surround sound decoder 106 receiving the audio data stream and a video decoder/monitor 108 receiving the MPEG video data stream. A cable or satellite set-top box 110 receives media from a cable or satellite television provider and outputs corresponding audio and MPEG video data streams on isochronous channels of the 1394 bus 102. The surround decoder 106 receives the audio data, and 2o the video decoder/monitor 108 receives the video data.
The surround sound decoder 106 receives compressed audio signals from other devices connected to the 1394 Bus 102 and decodes the audio. The decoded audio data is then output on the 1394 bus 102 to an amplifier/speaker subsystem 112. The video decoder/morutor 108 decodes MPEG data streams 2s received from various video source devices on the 1394 bus 102. Once decoded, the SUBSTITUTE SHEET (RULE 26~
uncompressed video signal is then typically output to a video monitor for presentation.
A controller 114 provides a point of control for all devices in the system 100. The controller 114 may also provide a user interface to configure the system when various devices are added or removed. The controller typically includes a user interface for adjusting audio volume, turning devices on and off, selecting channels on the set-top box 110, etc. Indeed, the controller may be the only device a user interacts with (other than inserting disks into the DVD player 104).
Each of the interconnected devices shown in the system 100 Figure 1 io includes interface circuitry connecting the 1394 Bus 102 to the particular application circuitry included in the devices. Such interface circuitry includes both the physical electrical connections (known as the PHY layer) and the data format translation interface (known as the Link layer). Such interface circuitry is well known for those skilled in the art, and the general features of such circuitry need not be described herein.
For video and audio applications, which require constant data transfer rates, it is particularly important that a device receiving such data accurately recover the sample rate clock signal from the device transmitting such data. This ensures that data buffers in the system do not overflow or underflow. FireWire bus architecture 2o supports transmission of isochronous data packets including time stamp information that can be used to recover the sample rate clock, such as in accordance with the IEC
61883 standard, entitled "Digital Interface for Consumer Audio/Video Equipment."
Because there is no requirement that different data streams be frequency related (i.e., isochronous streams may have free-running sample rates), each receiving device or node must implement a separate clock recovery circuit for each received isochronous channel of the 1394 bus.
SUBSTITUTE SHEET (RULE 26) Referring to Figure 2, a functional block diagram depicts the prior art approach of providing time stamps and correspondingly recovering a sample rate clock. The interface circuitry included within a transmitting device or node 200 is depicted, as is a portion of the interface circuitry included within the receiving device s or node 202. The transmitting node 200 includes a latch 204 that latches a lower portion of the value stored in a cycle time register 206 included within the Link layer of the interface circuitry. The latch 204 latches the cycle nme value every predetermined number of cycles of the sample rate clock (such as a digital audio word clock in the case of audio data transmission). A transfer delay value is added to io the latched cycle time register value, and the resulting time stamp is inserted into the header of the corresponding isochronous data packet 208. As is known to those skilled in the art, the value of the transfer delay is determined at system initialization or bus reset.
At the receiving device or node 202, the received time stamp is is compared with the corresponding lower portion of the value stored in the receiving node's cycle time register 210. A comparator 212 produces a pulse signal in the event of equality, which is then input to a phase-locked loop (PLL) circuit 214 to recover the sample rate clock signal. All cycle time registers in a 1394 bus-based system are periodically set (at nominal 125 gs intervals) to the same value by a cycle start zo command issued by the the cycle master node, as is well understood in the art. Each node's cycle time register is then incremented by a quartz driven clock circuit included in the PHY layer of each node, with each clock circuit producing a nominal 24.576 MHz clock signal. Figure 2 depicts PHY clock circuits 216 and 218 of the transmitting node 200 and receiving node 202, respectively.
2s The above-described approach of generating and receiving time stamps has two particular problems associated with fitter. The first problem is that the separate PHY clock circuits included in each node may have slightly different SUBSTITUTE SHEET (RULE 26) frequencies. The IEEE 1394 standard limits frequency deviations to 100 ppm from the nominal rate. Thus, the PHY clocks 216, 218 of the transmitting and receiving nodes 200, 202 could be off from one another by as much as 200 ppm. Over the 125~s isochronous cycle time, this translates to s (200)*(24.576s'1)*(125~.s)=0.6144, or more than half a least significant bit.
While the integer count is still essentially equal at the cycle time registers 206, 210 of the transmitting and receiving nodes 200, 202, the instantaneous edges of each register's shift can differ by up to 0.6144 of bit time, or io (0.6144)/(24.576 MHz)=25ns.
Even with perfect phase-locked loop circuits in the rest of the clock recovery circuitry, 25ns of fitter can occur.
The second problem associated with fitter arises from the finite length nature of the generated time stamps and the resulting quantization noise. This is quantization noise is correlated to the PHY clock circuit 216 and the generated time stamp period of the transmitting node 200. When the receiving node 202 recovers the sample rate clock signal from the time stamp information, this clock is jittered by the quantization error. When this jittered clock is used to drive either a digital-to-analog or analog-to-digital converter, unwanted distortion is introduced into the converted 2o audio signal and degrades signal quality.
SUMMARY
In accordance with the present invention, a method is provided for recoverying sample clock signals. The method is performed in connection with a SUBSTITUTE SHEET (RULE 26) system including an isochronous device, with the isochronous device having a stored cycle time value that is set by a periodic command issued at times referenced to a first clock signal. The method includes producing a second clock signal referenced to the first clock signal, and incrementing the stored cycle time value in response to the s second clock signal. A time stamp value is extracted from a data packet received by the isochronous device. The time stamp value is then compared to the stored cycle time value, and a pulse signal is produced in the event of a match. The frequency of the sample clock signal is then proportional to the frequency of successive pulses.
The method may be performed in connection with an isochronous communications io bus, such as an IEEE 1394 bus. In such case, the periodic command may be the cycle start command issued by the cycle master, with the first clock signal being produced by the cycle master. The second clock may then be referenced to the incrementing of the cycle-count field of the stored cycle time value.
In accordance with another aspect of the present invention, circuitry is ~s provided for receiving a stream of data packets having associated time stamp values.
The circuitry includes a buffer for receiving and temporarily storing the data packets.
A packet parser is coupled with the buffer and separates the time stamp values from the data packets. A clock recovery circuit is coupled with the packet parser and compares the time stamp values to a cycle time value, with the clock recovery circuit 20 then producing a data sample clock signal referenced to matched comparisons. A
cycle time register is coupled with the clock recovery circuit and provides the cycle time value, which is set in response to a periodic command and incremented in response to a clocking signal. A clocking circuit is coupled with the cycle time register and provides the clocking signal, which is referenced to the periodic 2s command. The circuitry may further include a phase-locked loop circuit that drives the clocking circuit, with the phase-locked loop circuit being referenced to the periodic command. The circuitry may be adapted for coupling with an isochronous SUBSTITUTE SHEET (RULE 26) communications bus, such as an IEEE 1394 bus. In such case, the periodic command may be the cycle start command issued by the cycle master, with the clocking signal then referenced to the incrementing of the cycle-count field of the stored cycle time value.
s In accordance with a further aspect of the invention, a method is provided for generating a time stamp value referenced to a data sample clock for transmission with an isochronous data packet. The method includes latching a cycle time value at a time referenced to the data sample clock, adding a dither value, and filtering the result. The dither value may be determined according to a triangular io probability density function, and the filtering may include shifting noise out of the frequency range of the data sample clock.
In accordance with yet another aspect of the invention, circuitry is provided for transmitting a stream of data packets having associated time stamp values. The circuitry includes a cycle time register that provides a cycle time value.
is The cycle time value is incremented by a clocking signal provided by a clocking circuit. A data interface provides data and a corresponding data sample clock signal.
A time stamp generator is coupled with the data interface and with the cycle time register. The time stamp generator produces the time stamp values by latching cycle time values at times referenced to the data sample clock, adding dither values, and 2o filtering the resulting sum values. A packet generator is coupled with the data interface and with the time stamp generator. The packet generator combines the time stamp values with the data to form data packets. The circuitry may further include a packet buffer for temporarily storing data packets received from the packet generator.
The packet buffer may be coupleable with an isochronous communications bus, such 2s as an IEEE 1394 bus, for transmission of the data packets thereon.
SUBSTITUTE SHEET (RULE 26~

BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 is a functional block diagram that depicts a typical IEEE 1394 system.
Figure 2 is a functional block diagram that depicts circuitry for s producing time stamps by a prior art transmitting device and circuitry for sample rate clock recovery in a prior art receiving device in an IEEE 1394 system.
Figure 3 is a functional block diagram depicting a received isochronous datapath through interface circuitry in accordance with an embodiment of the present invention.
io Figure 4 is a functional block diagram depicting a transmit isochronous datapath through interface circuitry in accordance with another embodiment of the present invention.
Figure 5 is a functional block diagram depicting circuitry included in the interface of Figure 4 for decorrelating and reducing noise in accordance with an ~s embodiment of the present invention.
DETAILED DESCRIPTION
The following is a description of circuitry and methods for reducing fitter in a recovered data sample clock. The circuitry and methods are conformable to the applicable IEEE 1394, ISO/IEC 13213, and IEC 61883 standards. In this 2o description, certain details are set forth in order to provide a thorough understanding of various embodiments of the present invention. It will be clear to one skilled in the art, however, that the present invention may be practiced without these details. In other instances, well-known circuits, circuit components, control signals, and timing and communications protocols have not been shown or described in detail in order to SUBSTITUTE SHEET (RULE 26) avoid unnecessarily obscuring the description of the various embodiments of the invention. The described subject matter relates to technology similar to that disclosed in a concurrently filed patent application, entitled "Method and Apparatus for Data Sample Clock Recover," the disclosure of which is incorporated herein by s reference.
Figure 3 depicts an embodiment of the invention that addresses the above-identified first problem associated with fitter in prior art approaches to isochronous communications. Figure 3 shows certain circuitry included within a Link layer 300 of interface circuitry coupling the 1394 bus 102 to an application host io 302. The figure also depicts a physical/electrical interface or PHY layer 304. The particular circuitry shown within the Link layer 300 is a simplified depiction of the datapath for received isochronous data, together with certain associated control/monitor circuitry. Those skilled in the art will appreciate that a wide variety of circuitry is not shown in Figure 3, such as bus management layer circuitry, ~s transaction layer circuitry, datapath and control circuitry for transmitted isochronous data, and other link layer circuitry associated with asynchronous data protocols.
Such well-known circuitry is not shown in order to avoid unnecessarily obscuring the description of embodiments of the present invention.
The Link layer circuitry 300 includes a FIFO 306 for receiving 2o incoming isochronous data packets, such as audio data packets. These data packets are passed on to a packet parser 308 that separates the audio data from the header of the packet, including the time stamp. The audio data is then passed on to another FIFO 310, and then on to the application host 302 via a digital audio interface 312.
The packet parser 308 provides the time stamp values from the 2s isochronous data packets to a sample clock recovery circuit 314. The sample clock recovery circuit 314 includes circuitry like the comparator 212 and the phase-locked SUBSTITUTE SHEET (RULE 26) loop 214 described above in connection with Figure 2. The sample clock recovery circuit 314 produces a sample rate clock signal corresponding to the received time stamps and the value stored in a local cycle time register 316. This recovered clock signal is applied to a clocks generator circuit 318, which in turn provides the various s well-known clocking signals applied to the digital audio interface 312.
The cycle time register 316 is incremented in response to a local PHY
clock 320. Instead of being driven by a quartz crystal, as in the prior art, the PHY
clock 320 is instead driven by a phase-locked loop (PLL) circuit 322 that is referenced to a cycle-out pin 324 of the Link layer interface. As is known to those io skilled in the art, the cycle-out pin 324 toggles each time the cycle-offset field (lowest 12 bits) of the cycle time register wraps to zero (every 125 ~.s) and the cycle-count field (next 13 bits) is correspondingly incremented. Since the cycle-count interval equals the cycle master's cycle start command time interval, the cycle-out pin 324 toggles at a rate proportional to the cycle master's clock (albeit with the above-is described jittery. Providing the PLL 322 with a sufficiently large loop time constant will then substantially filter out fitter and produce a clock signal of substantially the same frequency as the cycle master PHY clock. Even if the fitter is not completely filtered, an improved performance still results, since the jittery clock signal produced by the PLL-driven PHY clock will be statistically closer in frequency to the cycle Zo master than the prior art quartz-driven PHY clock. Although depicted as external, those skilled in the art will appreciate that the PLL 322 can be advantageously integrated within either the Link layer 300 or the PHY layer 304.
Each of the circuits described in connection with Figure 3 is of a type well known in the art. One skilled in the art would be able to implement such circuits 2s or their equivalent in the described or equivalent configuration to practice the present invention. Accordingly, internal and operational details of such circuits need not be provided.
SUBSTITUTE SHEET (RULE 26) Figure 4 depicts an embodiment of the invention that addresses the above-identified second problem associated with fitter in prior art approaches to isochronous communications. Figure 4 shows circuitry included within a Link layer 400 of interface circuitry coupling the 1394 bus 102 to an application host 402. The s figure also depicts a physical/electrical interface or PHY layer 404. The particular circuitry shown within the Link layer 400 is a simplified depiction of the datapath for isochronous data to be transmitted via the 1394 bus 102, together with certain associated control/monitor circuitry. Those skilled in the art will appreciate that a wide variety of circuitry is not shown in Figure 4, such as bus management layer io circuitry, transaction layer circuitry, datapath and control circuitry for received isochronous data, and other link layer circuitry associated with asynchronous data protocols. Such well-known circuitry is not shown in order to avoid unnecessarily obscuring the description of embodiments of the present invention.
The Link layer circuitry 400 includes a digital audio interface 406 that ~s receives incoming audio data from the application host 402 and passes this data on to a FIFO 408. This audio data is passed on to a packet generator 410 that creates an isochronous data packet, including the audio data and a time stamp. The data packet is passed on to another FIFO 412, and then transmitted via the 1394 bus 102 to a receiving device.
2o The packet generator 410 receives the time stamp values from a time stamp generator circuit 414, which is discussed in further detail below. The time stamps correspond with values received from a local cycle time register 416 at times referenced to the audio sample clock signal received from the digital audio interface 406. The cycle time register 416 may be clocked conventionally or as described 2s above in connection with Figure 3.
SUBSTITUTE SHEET (RULE 26) Figure 5 depicts certain circuitry included in the time stamp generator circuit circuit 414. A time stamp is first produced by conventional time stamp circuitry 500 similar to that described above in connection with the prior art transmitting node 200 of Figure 2. A summation circuit 502 then adds the s conventionally generated time stamp value to a dither signal, such as from a triangular probability density function (TPDF) generator 504. As is known to those skilled in the art, dithering the time stamp decorrelates the fitter, at the expense of introducing broadband noise. Feeding back the summation circuit's output through a suitable noise shaping filter 506 then shifts this noise out of the expected frequency io band of the sample clock signal to be recovered. Remaining fitter power will then be further reduced during normal filtering done during clock recovery at the receiving node.
Each of the circuits described in connection with Figures 4 and 5 is of a type well known in the art. One skilled in the art would be able to implement such 1s circuits or their equivalent in the described or equivalent configuration to practice the present invention. Accordingly, internal and operational details of such circuits need not be provided.
From the foregoing, it will be appreciated that, although specific embodiments of the invention have been described above for purposes of illustration, 2o various modifications may be made to these embodiments without deviating from the spirit and scope of the invention. While the discussion has been primarily directed to recoverying low fitter sample clocks for audio data in IEEE 1394 bus-based systems, the inventive teachings are also applicable to other isochronous communications.
Those skilled in the art will understand that any of a wide variety of circuit topologies 2s could be employed to reduce fitter in recovered data sample rate clock signals by reducing the frequency difference beween the various local PHY clocks. Also, those skilled in the art will understand that any of a wide variety of circuit topologies could SUBSTITUTE SHEET (RULE 26) be employed to reduce fitter in recovered data sample rate clock signals by dithering and filtering transmitted time stamps. Further, many of the functions of the above-described circuit embodiments could instead be performed in software.
Indeed, numerous variations are well within the scope of the invention, and the s invention is not limited except as by the appended claims.
SUBSTITUTE SHEET (RULE 26)

Claims (33)

14
1. In a system including a plurality of isochronous devices exchanging isochronous data packets having associated time stamp values, a selected one of the isochronous devices producing a first clock signal and issuing a periodic command at times referenced to the first clock signal, the periodic command setting cycle time values stored in the isochronous devices, a method of recovering a data sample rate signal, the method comprising:
producing a second clock signal referenced to the first clock signal;
incrementing the stored cycle time value in response to the second clock signal;
extracting a time stamp value included in a received one of the data packets;
comparing the extracted time stamp value with the stored cycle time value; and when the received time stamp value equals the stored cycle time value, producing a pulse signal, the frequency of the data sample rate signal being proportional to the frequency of successive pulses.
2. The method of claim 1 wherein producing the second clock signal includes referencing the second clock signal to the periodic command.
3. The method of claim 1 wherein the isochronous devices are coupled by an IEEE 1394-based bus, and wherein producing the second clock signal includes referencing the second clock signal to the periodic command, the periodic command being a cycle start command broadcast on the bus.
4. The method of claim 1 wherein the isochronous devices are coupled by an IEEE 1394-based bus, and wherein producing the second clock signal includes referencing the second clock signal to an incrementing of a cycle-count field of the stored cycle time value.
5. In a home entertainment system including an audio source coupled with an audio receiver, the audio source producing a stream of audio data packets having associated time stamp values, and the audio receiver receiving the audio data packets, a cycle time value stored in the audio receiver being set by a periodic command referenced to a first clock signal, a method for the audio receiver to reduce fitter in a recovered data sample clock, the method comprising:
producing a second clock signal referenced to the first clock signal;
incrementing the stored cycle time value in response to the second clock signal;
extracting a time stamp value from one of the audio data packets; and comparing the received time stamp value with the stored cycle time value.
6. The method of claim 5 wherein producing the second clock signal includes referencing the second clock signal to the periodic command.
7. The method of claim 5 wherein the audio source and audio receiver are coupled by an isochronous communications bus, and wherein producing the second clock signal includes referencing the second clock signal to the periodic command, the periodic command being an isochronous cycle start command broadcast on the bus.
8. The method of claim 5 wherein the audio source and audio receiver are coupled by an IEEE 1394-based bus, and wherein producing the second clock signal includes referencing the second clock signal to an incrementing of a cycle-count field of the cycle time value stored in the audio receiver.
9. Circuitry for receiving a stream of data packets including associated time stamp values, the circuitry comprising:
a buffer operable to receive and temporarily store the data packets;
a packet parser coupled with the buffer and operable to separate the time stamp values from the data packets;
a comparison circuit coupled with the packet parser, the comparison circuit operable to receive the time stamp values and compare the time stamp values to a cycle time value;
a cycle time register coupled with the comparison circuit and operable to provide the cycle time value, the cycle time value being set in response to a periodic command, and the cycle time value being incremented in response to a clocking signal; and a clocking circuit coupled with the cycle time register and operable to provide the clocking signal, the clocking signal being referenced to the periodic command.
10. The circuitry of claim 9 wherein the circuitry is operable to be coupled to an IEEE 1394-based bus, and wherein the periodic command is a cycle start command broadcast on the bus.
11. The circuitry of claim 9, further comprising a phase-locked loop circuit coupled with and driving the clocking circuit, the phase-locked loop being referenced to the periodic command.
12. The circuitry of claim 9 wherein the circuitry is operable to be coupled to an isochronous communications bus, and further comprising a phase-locked loop circuit coupled with and driving the clocking circuit, the phase-locked loop being referenced to the periodic command, the periodic command being an isochronous cycle start command broadcast on the bus.
13. The circuitry of claim 9 wherein the circuitry is operable to be coupled to an IEEE 1394-based bus, and further comprising a phase-locked loop circuit coupled with and driving the clocking circuit, the phase-locked loop being referenced to an incrementing of a cycle-count field of the cycle time value stored in the cycle time register.
14. A home entertainment system comprising audio/video sources coupled with audio/video receivers, the sources each operable to produce a stream of data packets having associated time stamp values, and the receivers each operable to receive a selected one of the streams of data packets, at least one of the receivers comprising:
a buffer operable to receive and temporarily store the received data packets;
a packet parser coupled with the buffer and operable to separate the time stamp values from the data packets;
a clock recovery circuit coupled with the packet parser, the clock recovery circuit operable to receive the time stamp values and compare the time stamp values to a cycle time value, the clock recovery circuit operable to produce a data sample clock signal referenced to matched comparisons of the time stamp values and the cycle time value;
a cycle time register coupled with the clock recovery circuit and operable to provide the cycle time value, the cycle time value being set in response to a periodic command, and the cycle time value being incremented in response to a clocking signal; and a clocking circuit coupled with the cycle time register and operable to provide the clocking signal, the clocking signal being referenced to the periodic command.
15. The home entertainment system of claim 14 wherein the audio/video sources are coupled with the audio/video receivers by an isochronous communications bus, and wherein wherein the periodic command is an isochronous cycle start command broadcast on the bus.
16. The home entertainment system of claim 15 wherein the isochronous communications bus is an IEEE 1394 bus.
17. The home entertainment system of claim 14 wherein the one receiver further comprises a phase-locked loop circuit coupled with and driving the clocking circuit, the phase-locked loop being referenced to the periodic command.
18. The home entertainment system of claim 14 wherein the audio/video sources are coupled with the audio/video receivers by an isochronous communications bus, and wherein the one receiver further comprises a phase-locked loop circuit coupled with and driving the clocking circuit, the phase-locked loop being referenced to the periodic command, the periodic command being an isochronous cycle start command broadcast on the bus.
19. The home entertainment system of claim 14 wherein the audio/video sources are coupled with the audio/video receivers by an IEEE 1394 bus, and wherein the one receiver further comprises a phase-locked loop circuit coupled with and driving the clocking circuit, the phase-locked loop being referenced to an incrementing of a cycle-count field of the cycle time value stored in the cycle time register.
20. A method of generating a time stamp value referenced to a data sample clock for transmission with an isochronous data packet, the method comprising:
latching a cycle time value at a time referenced to the data sample clock;
adding a dither value to the cycle time value; and filtering the addition of the dither value and the cycle time value.
21. The method of claim 20 wherein adding a dither value includes adding a value determined according to a triangular probability density function.
22. The method of claim 20 wherein filtering includes shifting noise out of the frequency range of the data sample clock.
23. A method of reducing fitter in a data sample clock recovered from a stream of data packets, comprising:
generating a time stamp;
dithering the time stamp;
filtering the the dithered time stamp; and transmitting the dithered and filtered time stamp along with an associated one of the data packets.
24. The method of claim 23 wherein dithering the time stamp includes dithering the time stamp according to a triangular probability density function.
25. The method of claim 23 wherein filtering the time stamp includes shifting noise out of an expected frequency range of the recovered data sample clock.
26. The method of claim 23 wherein dithering the time stamp includes adding a dither value to the time stamp.
27. The method of claim 26 wherein filtering the dithered time stamp includes feeding back the dithered time stamp.
28. Circuitry for transmitting a stream of data packets including associated time stamp values, the circuitry comprising:
a cycle time register operable to provide a cycle time value, the cycle time value being incremented in response to a clocking signal;
a clocking circuit coupled with the cycle time register and operable to provide the clocking signal;
a data interface operable to provide data and a corresponding data sample clock;
a time stamp generator coupled with the data interface and with the cycle time register, the time stamp generator operable to latch cycle time values at times referenced to the data sample clock, the time stamp generator further operable to add dither values to the latched cycle time values, to filter the resulting sum values, and to correspondingly produce the time stamp values; and a packet generator coupled with the data interface and with the time stamp generator, the packet generator operable to combine the time stamp values with the data to form the data packets.
29. The circuitry of claim 28, further comprising a packet buffer coupled with the packet generator and operable to receive and temporarily store the data packets, the packet buffer operable to be coupled with an isochronous communications bus for transmission of the data packets thereon.
30. The circuitry of claim 29 wherein the isochronous communications bus is an IEEE 1394 bus.
31. A home entertainment system comprising audio/video sources coupled with audio/video receivers, the sources each operable to produce a stream of data packets having associated time stamp values, and the receivers each operable to receive a selected one of the streams of data packets, at least one of the transmitters comprising:
a cycle time register operable to provide a cycle time value, the cycle time value being incremented in response to a clocking signal;
a clocking circuit coupled with the cycle time register and operable to provide the clocking signal;
a data interface operable to provide data and a corresponding data sample clock;
a time stamp generator coupled with the data interface and with the cycle time register, the time stamp generator operable to latch cycle time values at times referenced to the data sample clock, the time stamp generator further operable to add dither values to the latched cycle time values, to filter the resulting sum values, and to correspondingly produce the time stamp values; and a packet generator coupled with the data interface and with the time stamp generator, the packet generator operable to combine the time stamp values with the data to form the data packets.
32. The home entertainment system of claim 31 wherein the audio/video sources are coupled with the audio/video receivers by an isochronous communications bus.
33. The home entertainment system of claim 32 wherein the isochronous communications bus is an IEEE 1394 bus.
CA002330970A 1998-05-11 1999-05-11 Method and apparatus for low jitter clock recovery Abandoned CA2330970A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US8502198P 1998-05-11 1998-05-11
US60/085,021 1998-05-11
PCT/US1999/010226 WO1999059047A2 (en) 1998-05-11 1999-05-11 Method and apparatus for low jitter clock recovery

Publications (1)

Publication Number Publication Date
CA2330970A1 true CA2330970A1 (en) 1999-11-18

Family

ID=22188925

Family Applications (4)

Application Number Title Priority Date Filing Date
CA002330739A Abandoned CA2330739A1 (en) 1998-05-11 1999-05-10 Method and system for distributing processing instructions with data to be processed
CA002330970A Abandoned CA2330970A1 (en) 1998-05-11 1999-05-11 Method and apparatus for low jitter clock recovery
CA002330740A Abandoned CA2330740A1 (en) 1998-05-11 1999-05-11 Method and system for providing an appliance user interface
CA002330676A Abandoned CA2330676A1 (en) 1998-05-11 1999-05-11 Method and apparatus for data sample clock recovery

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CA002330739A Abandoned CA2330739A1 (en) 1998-05-11 1999-05-10 Method and system for distributing processing instructions with data to be processed

Family Applications After (2)

Application Number Title Priority Date Filing Date
CA002330740A Abandoned CA2330740A1 (en) 1998-05-11 1999-05-11 Method and system for providing an appliance user interface
CA002330676A Abandoned CA2330676A1 (en) 1998-05-11 1999-05-11 Method and apparatus for data sample clock recovery

Country Status (5)

Country Link
EP (4) EP1076850A2 (en)
JP (4) JP2002514810A (en)
AU (4) AU3897099A (en)
CA (4) CA2330739A1 (en)
WO (4) WO1999059060A2 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3424620B2 (en) * 1999-09-24 2003-07-07 日本電気株式会社 Isochronous packet transfer method, recording medium for transfer control program, bridge, and packet transfer control LSI
US6895009B1 (en) 2000-04-07 2005-05-17 Omneon Video Networks Method of generating timestamps for isochronous data
EP1198085B1 (en) 2000-10-10 2011-06-08 Sony Deutschland GmbH Cycle synchronization between interconnected sub-networks
DE10104876A1 (en) * 2001-02-03 2002-08-08 Bosch Gmbh Robert Circuit arrangement and method for the synchronized transmission of audio data streams in a bus system
DE10229372A1 (en) * 2002-06-29 2004-01-15 Deutsche Thomson-Brandt Gmbh Data transmitter, especially for OSI/SO 7-layer model data security layer, has time marker allocation unit that allocates generated time marker to current data packet or data packet to be generated
TWI347092B (en) 2006-04-11 2011-08-11 Realtek Semiconductor Corp Methods for adjusting sampling clock of sampling circuit and related apparatuses
GB2449932A (en) 2007-06-08 2008-12-10 Tandberg Television Asa Timestamp conversion using samples
US7936794B2 (en) * 2007-08-07 2011-05-03 Avaya Inc. Clock management between two end points
GB2514572B (en) * 2013-05-29 2020-05-27 Grass Valley Ltd Re-timing sampled data
CN106933212B (en) * 2017-04-21 2019-12-10 华南理工大学 reconfigurable industrial robot programming control method in distributed manufacturing environment

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2645989A1 (en) * 1989-04-17 1990-10-19 Bull Sa MULTIFUNCTION COUPLER BETWEEN A CENTRAL COMPUTER UNIT AND THE DIFFERENT PERIPHERAL ORGANS OF THE SAME
EP0489204B1 (en) * 1990-12-04 1995-08-16 Hewlett-Packard Limited Reprogrammable data storage device
JP2937529B2 (en) * 1991-03-27 1999-08-23 日本電気株式会社 Clock recovery circuit
US5526362A (en) * 1994-03-31 1996-06-11 Telco Systems, Inc. Control of receiver station timing for time-stamped data
US5635979A (en) * 1994-05-27 1997-06-03 Bell Atlantic Dynamically programmable digital entertainment terminal using downloaded software to control broadband data operations
JP3203978B2 (en) * 1994-07-25 2001-09-04 ソニー株式会社 Data transmitting / receiving device, data receiving device, and data transmitting device
US5901149A (en) * 1994-11-09 1999-05-04 Sony Corporation Decode and encode system
US6067500A (en) * 1995-08-14 2000-05-23 Aisin Aw Co., Ltd. Navigation system
EP0895378B1 (en) * 1996-05-07 2006-03-08 Yamaha Corporation Method and system for transmitting audio data with time stamp
US5922050A (en) * 1996-07-02 1999-07-13 Sun Microsystems, Inc. Method and apparatus for controlling a device on a network
JPH10190705A (en) * 1996-10-22 1998-07-21 Sony Corp Transmission device/method and reception device/method

Also Published As

Publication number Publication date
JP2002515718A (en) 2002-05-28
JP2002514810A (en) 2002-05-21
JP2002514820A (en) 2002-05-21
WO1999059047A2 (en) 1999-11-18
AU3894699A (en) 1999-11-29
WO1999059073A9 (en) 2001-05-31
JP2002514876A (en) 2002-05-21
EP1076858A2 (en) 2001-02-21
AU3792199A (en) 1999-11-29
WO1999059060A2 (en) 1999-11-18
EP1076850A2 (en) 2001-02-21
AU3792299A (en) 1999-11-29
CA2330740A1 (en) 1999-11-18
CA2330739A1 (en) 1999-11-18
WO1999059073A2 (en) 1999-11-18
WO1999059047A3 (en) 2000-04-06
CA2330676A1 (en) 1999-11-18
EP1076846A2 (en) 2001-02-21
AU3897099A (en) 1999-11-29
WO1999059391A3 (en) 2001-03-22
WO1999059391A2 (en) 1999-11-18
EP1101303A2 (en) 2001-05-23
WO1999059060A3 (en) 1999-12-29
WO1999059073A3 (en) 1999-12-29

Similar Documents

Publication Publication Date Title
US6954467B1 (en) Clustered networked devices
US6172989B1 (en) Transmitting apparatus and method, receiving apparatus and method
US5781599A (en) Packet receiving device
CN101305351B (en) Universal network interface for home network
US6247083B1 (en) Method and apparatus for bi-directionally transferring data between an IEEE 1394 bus and a device to be controlled by a control signal transmitted via the bus
US6718476B1 (en) Method of synchronizing each local clock to a master clock in a data bus system
US20070255855A1 (en) System and Method for Transferring Different Types of Streaming and Packetized Data Across an Ethernet Transmission Line Using a Frame and Packet Structure Demarcated with Ethernet Coding Violations
JPH09321808A (en) Re-formatting of variable rate data for fixed rate communication
CA2330970A1 (en) Method and apparatus for low jitter clock recovery
US20090251190A1 (en) System and method for generating two effective frequencies using a single clock
JPH11284671A (en) Signal processing circuit and signal processing method
JPH08237231A (en) Circuit for communication system,communication link and communication equipment
US20130194501A1 (en) Signal processing apparatus, display apparatus, display system, method for processing signal, and method for processing audio signal
US6763037B1 (en) Transmitting apparatus and method, receiving apparatus and method
WO2001022659A2 (en) Method and apparatus for distributed synchronization signal
EP0932104B1 (en) Method and apparatus for transferring bi-directionally data between an IEEE 1394 bus and a device
Wetzel et al. Consumer Applications of the IEEE 1394 Serial Bus, and a 1394/DV Video Editing System
Thompson IEEE 1394: changing the way we do multimedia communications
JP3578156B2 (en) Packet receiver
JP2001007884A (en) Digital data processor and method
Moses Audio Applications of the IEEE 1394 High Performance Serial Bus
MXPA02000477A (en) Method and appratus for isolating iic bus noise from a tuner in a television receiver.
KR19990033448A (en) Network interface circuit

Legal Events

Date Code Title Description
EEER Examination request
FZDE Discontinued
FZDE Discontinued

Effective date: 20030512