US6061802A - Software based clock synchronization - Google Patents
Software based clock synchronization Download PDFInfo
- Publication number
- US6061802A US6061802A US09/109,835 US10983598A US6061802A US 6061802 A US6061802 A US 6061802A US 10983598 A US10983598 A US 10983598A US 6061802 A US6061802 A US 6061802A
- Authority
- US
- United States
- Prior art keywords
- data
- clock
- clock rate
- signal
- computer system
- 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.)
- Expired - Lifetime
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40058—Isochronous transmission
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/12—Synchronisation of different clock signals provided by a plurality of clock generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/14—Time supervision arrangements, e.g. real time clock
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40123—Interconnection of computers and peripherals
Definitions
- This invention relates to computer systems and, more particularly, to synchronizing clocks within computer systems.
- USB Universal Serial Bus
- AC '97 Audio Codec '97
- Typical computer systems include buffers to accommodate the lack of synchronization and drift between the clocks of a computer system.
- buffers add expense, size, and latency to computer systems. Therefore, it is desirable to reduce the size of the buffers within computer systems.
- What is desired is a clock structure in which the various clocks of the data buses and/or devices coupled to those buses within the computer system are synchronized.
- a frame-rate clock of a plurality of data buses are synchronized to a master clock signal.
- the master clock signal may be derived from the existing clocks signals within the computer system or from data received from an external source.
- the master clock signal may also be used by an operating system scheduler to schedule task that generate or consume blocks of isochronous data.
- the drift of a device clock signal relative to a master clock signal is measured and used to synchronize the device clock signal.
- a mechanism may monitor the level of data in a data buffer.
- the level of data in the data buffer is a measure of the drift between the clock generating the data and the clock consuming the data.
- synchronization information is provided to synchronize the rates of the clock signals that generate and consume the data.
- the level of data in a data buffer is used to synchronize the clock of a video camera.
- the level of data in a data buffer is used to synchronize a clock of a telephony codec.
- the present invention contemplates a computer system including: a central processing unit (CPU) including a software program operating on the CPU; a first data bus coupled to the CPU and configured to receive data from a first isochronous device at a first clock rate; a second data bus coupled to the CPU and configured to receive data from a second isochronous device at a second clock rate; and a third data bus coupled to the CPU and configured to transfer data at a third clock rate.
- the software is configured to select the first clock rate or the second clock rate as a master clock rate and output a master clock signal to the third data bus, such that the third clock rate approximates the master clock rate.
- FIG. 1 is a block diagram of the computer system including a plurality of data buses according to one embodiment of the present invention
- FIG. 3 is a block diagram of a computer system in which a plurality of clocks are synchronized to an external clock signal according to one embodiment of the present invention
- FIG. 4 is a block diagram of a computer system in which synchronization of a plurality of clocks are performed by software according to one embodiment of the present invention
- FIG. 5 is a block diagram of a computer system that synchronizes the clocks of external devices according to one embodiment of the present invention
- FIG. 7 is a flowchart diagram of a method for adjusting the frame clock of an external device according to one embodiment of the present invention.
- Mezzanine bus 110 is coupled to bus bridge 112, which is in turn coupled to peripheral bus 114.
- Peripheral bus 114 may implement any of a variety of data bus protocols including the Extended Industry Standard Architecture (EISA) bus.
- Mezzanine bus 110 is further coupled to ISDN controller 126, AC '97 controller 128 and signal processor 130.
- ISDN controller 126 includes clock 134.
- AC '97 controller 128 includes clock 136.
- Signal processor 130 is coupled to AC '97 controller 128 and red book audio source 132. Red book audio source 132 includes clock 138.
- red book audio source 132 provides data samples to signal processor 130.
- Signal processor 130 may internally process the data or may output the data on mezzanine bus 110.
- AC '97 controller 128 is coupled to mezzanine bus 110 and signal processor 130. Data output to a device coupled to AC'97 bus may be received directly from mezzanine bus 110 or the data may be sent to signal processor 130 for processing and then transferred to AC '97 controller 128.
- each bus controller and data source may receive individual clock signals.
- USB host controller 116 receives a clock signal from USB clock 124.
- IEEE 1394 controller 118 receives a clock signal from clock 122.
- ISDN controller 126 receives a clock signal from clock 134.
- AC '97 controller 128 receives a clock signal from clock 136, and red book audio source 132 receives a clock signal from clock 138.
- a clock may include two clock signals.
- a first clock signal called a data clock signal, is typically a high frequency clock signal that defines a clock rate at which bits of data are transferred.
- a second clock signal called a frame clock signal, is typically a lower frequency signal that defines the rate at which frames of data are transferred.
- a clock may only provide a frame clock signal.
- the frame rate of the clocks of computer system 100 may be independent. In other words, the frame clock signals may have different rates and be asynchronous relative to each other.
- the rate of the frame clock signal of USB clock 124 may be 1 kilohertz (kHz).
- the rate of the frame clock signal of clock 122 may be 8 kHz.
- the rate of clock 136 may be 48 kHz, the rate of clock 138 may be 44.1 kHz, and the rate of clock 134 may be 8 kHz.
- clocks 122 and 134 may have the same nominal rates, clock drift may lead to slightly different frequencies.
- FIG. 2 a computer system in which a plurality of clock signals are synchronized to an internal clock signal is shown.
- the rates of the frame clock signals of a plurality of clocks within the computer system are synchronized to a master clock signal.
- the clock signals may be generated from the master clock signal or an existing clock signal may be synchronized to the master clock signal.
- the master clock signal is selected from one of the existing clock signals within the computer system.
- the frame clock signal of clock 122 may be selected as the master clock signal.
- Clock 122 may be selected because the frame rate is the same as ISDN clock 134, a multiple of the frame rate of USB clock 124, and a divisor of the frame rate of clock 136.
- clock 122 may not be disabled while the master clock signed is based on it.
- Clock controller 120 may select a different clock on which to base the master clock signal prior to disabling clock 122.
- clock 122 may remain enabled throughout the operational period of the computer system.
- Clock controller 120 may additionally provide the master clock signal to interrupt controller 142 of CPU 102.
- interrupt controller 142 provides an interrupt signal to processor core 140.
- interrupt controller 142 may include a divider to divide the master clock signal down to generate an interrupt to processor core 140. For example, interrupt controller 142 may divide the 8 kHz master clock signal by eight to generate an interrupt to processor core 140 every millisecond. In one embodiment, the amount by which the divider divides the master clock signal is programmable.
- Processor core 140 may use the interrupt signal to schedule tasks that generate or consume blocks of data. By synchronizing the tasks that generate and consume data to the devices and buses that generate and consume data, the buffering required between CPU 102 and the devices and buses may be reduced.
- the frame clock rate of a resource may be sufficiently distinct from the master clock signal rate to make synchronization difficult or impractical.
- the frame clock rate of clock 138 may be 44.1 kHz. This frequency is difficult to synchronize with the master clock signal rate of 8 kHz.
- signal processor 130 may interpolate the data from red book audio source 132.
- interpolation is a mathematical process that converts data sampled at one clock rate to data sampled at a higher clock rate.
- clock controller 120 outputs the master clock signal to signal processor 130 so that signal processor 130 may interpolate the data from red book audio source 132 to the frequency of the master clock signal.
- the controllers within the computer system are designed such that the number of cycles of the data clock signal relative to the frame clock signal is variable.
- the frame clock rate may be adjusted such that the number of cycles of the data clock signal per frame clock cycle changes.
- the number of cycles of the data clock signal relative to the frame clock signal is fixed.
- the data clock signal may be generated from the frame clock signal.
- a phase-lock loop may be used to generate the data clock signal from the frame clock signal.
- FIG. 3 a computer system configured to synchronized a plurality of clocks to an external data clock signal is shown.
- video camera 302 is coupled to the IEEE 1394 bus.
- a camera clock 304 provides a clock signal to video camera 302.
- the computer system is unable to adjust the rate of camera clock 304.
- clock controller 120 synchonrizes the clocks of the computer system to the rate of the data received from video camera 302. In this manner, the internal clocks of the computer system are synchonrized to camera clock 304.
- clock controller 120 outputs a master clock signal to USB clock 124, clock 122, clock 134, and clock 136.
- Controller 118 may detect the lead or lag of clock 122 relative to camera clock 304 and provide a lead/lag control signal 306 to clock controller 120. Because clock 122 is synchronized to the master clock signal from clock controller 120, measuring the lead or the lag of clock 122 relative to camera clock 304 effectively measures the lead or lag of the master clock signal relative to camera clock 304.
- Clock controller 120 may use lead/lag signal 306 to synchronize the master clock signal to camera clock 304.
- the master clock signal may be derived directly from the external data signal and provided to clock 122.
- clock controller 120 provides the master clock signal to interrupt controller 142, which generates an interrupt to processor core 140.
- An operating system scheduler operating on processor core 140 may schedule tasks that generate or consume data based on the interrupt.
- Clock controller 120 may additionally output a control signal to signal processor 130, which interpolates data from red book audio source 132.
- the computer system may receive data from a first external device coupled to controller 116 and a second external device coupled to USB host controller 118.
- the clock synchronization software may receive an indication from clock controller 120 that data from two external sources are received.
- the clock synchronization software may choose to synchronize the master clock signal to the device coupled to controller 118.
- the clock synchronization software may output a control signal to clock controller 120 which causes clock controller 120 to synchronize the master clock signal to that device.
- the clock synchronization software additionally may output a control signal to USB host controller 116 and signal processor 130 causing those devices to interpolate the data received to match the clock rate of the master clock signal.
- the clock synchronization software may choose to synchronize the master clock signal to the device coupled to USB host controller 116.
- the clock synchronization software outputs a control signal to clock controller 120 to synchronize the master clock signal to that device.
- the clock synchronization software may additionally output control signals to controller 118 and signal processor 130 to interpolate the data received.
- Computer system 500 includes a video camera 302, a camera clock 304, a telephony codec 502 and a telephony device 504.
- Camera clock 304 includes a clock 506, a divider 508, and a frame clock 510.
- Telephony codec 502 includes a clock 512, a divider 514 and a frame clock 516.
- the rate of a frame clock is adjusted based upon the level of data in a buffer.
- clock controller 120 receives a data level signal indicating the level of data in the buffer.
- the threshold signal may indicate whether the data is above or below a predetermined threshold.
- clock controller 120 may adjust the amount by which a clock is divided to generate the frame clock.
- Computer system 500 includes two external devices: video camera 302 and telephony device 504. Although synchronization of the frame clock rate of each device is discussed separately, both devices may be synchronized concurrently by the computer system.
- video camera 302 generates video data at a predetermined sample rate.
- the sample rate is based on frame clock 510, which is generated by dividing down clock 506.
- the video data is routed to a buffer 144 in system memory 108.
- clock controller 120 monitors the level of data in buffer 144. If the level of data is too high, or exceeds a predetermined threshold, clock controller 120 conveys a threshold signal to camera clock 304. Based on the threshold signal, the rate of the frame clock signal may be adjusted by altering the divisor of divider 508.
- processor core 140 may monitor the level of data in buffer 144 and output a signal to camera clock 304 to adjust the rate of the frame clock signal.
- telephony device 504 generates data at a predetermined sample rate.
- the sample rate is based on frame clock 516, which is generated by dividing down clock 512.
- the video data is routed to a buffer in system memory 108. It is noted that a unique buffer is utilized for each device. In other words, if video camera 302 is using buffer 144, telephony device 504 will use a different buffer.
- clock controller 120 monitors the level of data in buffer 144. If the level of data is too high, or exceeds a predetermined threshold, clock controller 120 transmits a signal to telephony codec 502, which adjusts the rate of the frame clock signal. The frame rate of the clock signal may be adjusted by altering the divisor of divider 514.
- processor core 140 may monitor the level of data in buffer 144 and output a signal to telephony codec 502 to adjust the rate of the frame clock signal.
- a clock controller outputs a signal to the device clock which causes the clock divider to be adjusted such that the frame clock rate is adjusted downward.
- the clock controller may provide a signal to a processor, which outputs a signal that causes the clock divider to adjust the rate of the frame clock.
- the clock controller continues to monitor the threshold flag. In step 716, it is determined whether the threshold flag is detected. If the threshold flag is detected, then control returns to step 712. Alternatively, if the threshold flag is not detected, the clock controller may use this as indication that the frame clock is too slow and increase the rate of the frame clock in step 718. The net effect of the clock adjustments is an equilibrium about the threshold level.
- a first threshold flag may indicate an upper bound of the desired clock rate and a second threshold flag may indicate a lower bound of the desired clock rate. If the data in the buffer causes the first threshold flag to be asserted, the frame clock rate is decreased. If the data in the buffer causes the second threshold flag to be asserted, the rate of the frame clock is increased. If the data in the data buffer remains at a level between the threshold flags, the clock adjustment is successful and no adjustment is necessary.
- the data rate of the device may be determined by periodically reading the level of data in the buffer and adjusting the clock rate based on whether the data level is increasing or decreasing. In this embodiment, if the level of the data buffer increases by a predetermined amount, the data rate of the frame clock is decreased. Alternatively, if the data level of the buffer decreases by a predetermined amount, the frame clock rate is increased.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
Description
Claims (17)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/109,835 US6061802A (en) | 1998-07-02 | 1998-07-02 | Software based clock synchronization |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/109,835 US6061802A (en) | 1998-07-02 | 1998-07-02 | Software based clock synchronization |
Publications (1)
Publication Number | Publication Date |
---|---|
US6061802A true US6061802A (en) | 2000-05-09 |
Family
ID=22329827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/109,835 Expired - Lifetime US6061802A (en) | 1998-07-02 | 1998-07-02 | Software based clock synchronization |
Country Status (1)
Country | Link |
---|---|
US (1) | US6061802A (en) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002006935A1 (en) * | 2000-07-13 | 2002-01-24 | Schlumberger Malco, Inc. | Method and device for local clock generation using universal serial bus downstream received signals dp and dm |
US20020065940A1 (en) * | 2000-11-27 | 2002-05-30 | Kenji Suzuki | Periodic control synchronous system |
US6625743B1 (en) * | 1998-07-02 | 2003-09-23 | Advanced Micro Devices, Inc. | Method for synchronizing generation and consumption of isochronous data |
US6754171B1 (en) * | 2000-05-18 | 2004-06-22 | Enterasys Networks, Inc. | Method and system for distributed clock failure protection in a packet switched network |
DE10260656A1 (en) * | 2002-12-23 | 2004-07-15 | Infineon Technologies Ag | Method and device for extracting a clock frequency on which a data stream is based |
US6845398B1 (en) * | 1999-08-02 | 2005-01-18 | Lucent Technologies Inc. | Wireless multimedia player |
WO2005015414A2 (en) * | 2003-08-08 | 2005-02-17 | Visionflow, Inc. | Adaptive bandwidth allocation over a heterogeneous system |
US20060023824A1 (en) * | 2002-12-23 | 2006-02-02 | Infineon Technologies Ag | Method and device for extracting a clock frequency underlying a data stream |
EP1646150A1 (en) | 2002-12-23 | 2006-04-12 | Infineon Technologies AG | Method and device for extracting a clock pulse frequency underlying a data flow |
US20060209684A1 (en) * | 2005-03-18 | 2006-09-21 | Via Technologies, Inc. | Data rate controller, and method of control thereof |
US20060227245A1 (en) * | 2005-04-11 | 2006-10-12 | Silicon Graphics, Inc. | System and method for synchronizing multiple media devices |
US7903116B1 (en) * | 2003-10-27 | 2011-03-08 | Nvidia Corporation | Method, apparatus, and system for adaptive performance level management of a graphics system |
US20110093736A1 (en) * | 2009-10-16 | 2011-04-21 | Elan Microelectronics Corporation | Method and circuit for trimming an internal oscillator of a usb device |
CN103165169A (en) * | 2011-12-19 | 2013-06-19 | Gn奈康有限公司 | Method and system for synchronizing isochronous usb audio data to a RF communication device clock |
US20170060101A1 (en) * | 2015-01-31 | 2017-03-02 | San Diego Gas & Electric Company | Methods and systems for detecting and defending against invalid time signals |
US11321246B2 (en) * | 2017-07-26 | 2022-05-03 | Dell Products L.P. | Support information provisioning system |
US11546128B2 (en) | 2020-06-16 | 2023-01-03 | SK Hynix Inc. | Device and computing system including the device |
US11599495B2 (en) | 2021-04-01 | 2023-03-07 | SK Hynix Inc. | Device for performing communication and computing system including the same |
US11726947B2 (en) * | 2020-06-16 | 2023-08-15 | SK Hynix Inc. | Interface device and method of operating the same |
US11782792B2 (en) | 2021-04-05 | 2023-10-10 | SK Hynix Inc. | PCIe interface and interface system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5577075A (en) * | 1991-09-26 | 1996-11-19 | Ipc Information Systems, Inc. | Distributed clocking system |
US5764965A (en) * | 1996-09-23 | 1998-06-09 | Silicon Graphics, Inc. | Synchronization infrastructure for use in a computer system |
US5815689A (en) * | 1997-04-04 | 1998-09-29 | Microsoft Corporation | Method and computer program product for synchronizing the processing of multiple data streams and matching disparate processing rates using a standardized clock mechanism |
US5920897A (en) * | 1996-08-07 | 1999-07-06 | Seeq Technology, Incorporated | Apparatus and method for providing multiple channel clock-data alignment |
-
1998
- 1998-07-02 US US09/109,835 patent/US6061802A/en not_active Expired - Lifetime
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5577075A (en) * | 1991-09-26 | 1996-11-19 | Ipc Information Systems, Inc. | Distributed clocking system |
US5870441A (en) * | 1991-09-26 | 1999-02-09 | Ipc Information Systems, Inc. | Distributed clocking system |
US5920897A (en) * | 1996-08-07 | 1999-07-06 | Seeq Technology, Incorporated | Apparatus and method for providing multiple channel clock-data alignment |
US5764965A (en) * | 1996-09-23 | 1998-06-09 | Silicon Graphics, Inc. | Synchronization infrastructure for use in a computer system |
US5815689A (en) * | 1997-04-04 | 1998-09-29 | Microsoft Corporation | Method and computer program product for synchronizing the processing of multiple data streams and matching disparate processing rates using a standardized clock mechanism |
Cited By (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6625743B1 (en) * | 1998-07-02 | 2003-09-23 | Advanced Micro Devices, Inc. | Method for synchronizing generation and consumption of isochronous data |
US6845398B1 (en) * | 1999-08-02 | 2005-01-18 | Lucent Technologies Inc. | Wireless multimedia player |
US6754171B1 (en) * | 2000-05-18 | 2004-06-22 | Enterasys Networks, Inc. | Method and system for distributed clock failure protection in a packet switched network |
US6343364B1 (en) * | 2000-07-13 | 2002-01-29 | Schlumberger Malco Inc. | Method and device for local clock generation using universal serial bus downstream received signals DP and DM |
WO2002006935A1 (en) * | 2000-07-13 | 2002-01-24 | Schlumberger Malco, Inc. | Method and device for local clock generation using universal serial bus downstream received signals dp and dm |
US20020065940A1 (en) * | 2000-11-27 | 2002-05-30 | Kenji Suzuki | Periodic control synchronous system |
US7356617B2 (en) | 2000-11-27 | 2008-04-08 | Mitsubishi Denki Kabushiki Kaisha | Periodic control synchronous system |
DE10260656A1 (en) * | 2002-12-23 | 2004-07-15 | Infineon Technologies Ag | Method and device for extracting a clock frequency on which a data stream is based |
US20060023824A1 (en) * | 2002-12-23 | 2006-02-02 | Infineon Technologies Ag | Method and device for extracting a clock frequency underlying a data stream |
DE10260656B4 (en) * | 2002-12-23 | 2006-03-30 | Infineon Technologies Ag | Method and device for extracting a clock frequency underlying a data stream |
EP1646150A1 (en) | 2002-12-23 | 2006-04-12 | Infineon Technologies AG | Method and device for extracting a clock pulse frequency underlying a data flow |
US7453958B2 (en) | 2002-12-23 | 2008-11-18 | Infineon Technologies Ag | Method and device for extracting a clock frequency underlying a data stream |
WO2005015414A2 (en) * | 2003-08-08 | 2005-02-17 | Visionflow, Inc. | Adaptive bandwidth allocation over a heterogeneous system |
WO2005015414A3 (en) * | 2003-08-08 | 2005-04-14 | Visionflow Inc | Adaptive bandwidth allocation over a heterogeneous system |
US7903116B1 (en) * | 2003-10-27 | 2011-03-08 | Nvidia Corporation | Method, apparatus, and system for adaptive performance level management of a graphics system |
US20060209684A1 (en) * | 2005-03-18 | 2006-09-21 | Via Technologies, Inc. | Data rate controller, and method of control thereof |
US7996699B2 (en) | 2005-04-11 | 2011-08-09 | Graphics Properties Holdings, Inc. | System and method for synchronizing multiple media devices |
US20060227245A1 (en) * | 2005-04-11 | 2006-10-12 | Silicon Graphics, Inc. | System and method for synchronizing multiple media devices |
US8726061B2 (en) | 2005-04-11 | 2014-05-13 | Rpx Corporation | System and method for synchronizing multiple media devices |
US8595543B2 (en) * | 2009-10-16 | 2013-11-26 | Elan Microelectronics Corporation | Method and circuit for trimming an internal oscillator of a USB device according to a counting number between a first and second clock count value |
US20110093736A1 (en) * | 2009-10-16 | 2011-04-21 | Elan Microelectronics Corporation | Method and circuit for trimming an internal oscillator of a usb device |
CN103165169B (en) * | 2011-12-19 | 2016-06-22 | Gn奈康有限公司 | Usb audio during to the self adaptation etc. of RF communicator |
US9170981B2 (en) * | 2011-12-19 | 2015-10-27 | Gn Netcom A/S | Adaptive isochronous USB audio to RF communication device |
US20150324322A1 (en) * | 2011-12-19 | 2015-11-12 | Gn Netcom A/S | Adaptive Isochronous USB Audio To RF Communication Device |
CN103165169A (en) * | 2011-12-19 | 2013-06-19 | Gn奈康有限公司 | Method and system for synchronizing isochronous usb audio data to a RF communication device clock |
US9471531B2 (en) * | 2011-12-19 | 2016-10-18 | Gn Netcom A/S | Adaptive isochronous USB audio to RF communication device |
US20130158692A1 (en) * | 2011-12-19 | 2013-06-20 | Gn Netcom A/S | Adaptive Isochronous USB Audio To RF Communication Device |
US11487871B2 (en) * | 2015-01-31 | 2022-11-01 | San Diego Gas & Electric Company | Methods and systems for detecting and defending against invalid time signals |
US20170060101A1 (en) * | 2015-01-31 | 2017-03-02 | San Diego Gas & Electric Company | Methods and systems for detecting and defending against invalid time signals |
US11321246B2 (en) * | 2017-07-26 | 2022-05-03 | Dell Products L.P. | Support information provisioning system |
US11546128B2 (en) | 2020-06-16 | 2023-01-03 | SK Hynix Inc. | Device and computing system including the device |
US11726947B2 (en) * | 2020-06-16 | 2023-08-15 | SK Hynix Inc. | Interface device and method of operating the same |
US12132814B2 (en) | 2020-06-16 | 2024-10-29 | SK Hynix Inc. | Device and computing system including the device |
US11599495B2 (en) | 2021-04-01 | 2023-03-07 | SK Hynix Inc. | Device for performing communication and computing system including the same |
US11782792B2 (en) | 2021-04-05 | 2023-10-10 | SK Hynix Inc. | PCIe interface and interface system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6279058B1 (en) | Master isochronous clock structure having a clock controller coupling to a CPU and two data buses | |
US6061802A (en) | Software based clock synchronization | |
US6202164B1 (en) | Data rate synchronization by frame rate adjustment | |
US6085270A (en) | Multi-channel, multi-rate isochronous data bus | |
US6421702B1 (en) | Interrupt driven isochronous task scheduler system | |
US6418459B1 (en) | Isochronous task scheduling structure for a non-real-time operating system | |
EP0898749B1 (en) | A computer system having a multimedia bus and comprising a centralized i/o processor which performs intelligent data transfers | |
US20010011356A1 (en) | Dynamic memory clock control system and method | |
US6687255B1 (en) | Data communication circuit having FIFO buffer with frame-in-FIFO generator | |
EP1652054B1 (en) | Event time-stamping | |
KR20060002832A (en) | Method and apparatus for establishing and maintaining desired read latency in high-speed dram | |
AU2010251767A1 (en) | Compound universal serial bus architecture providing precision synchronisation to an external timebase | |
KR19990044427A (en) | Dynamic delayed transaction device | |
KR100723496B1 (en) | Synchronizer and method of multi-rate input data using unified First-In-First-Out memory | |
US6029221A (en) | System and method for interfacing a digital signal processor (DSP) to an audio bus containing frames with synchronization data | |
US5894567A (en) | Mechanism for enabling multi-bit counter values to reliably cross between clocking domains | |
US7966439B1 (en) | Apparatus, system, and method for a fast data return memory controller | |
US5594743A (en) | Fifo buffer system having an error detection and correction device | |
US6101613A (en) | Architecture providing isochronous access to memory in a system | |
US6404771B1 (en) | Clock lead/lag extraction in an isochronous data bus | |
US7158532B2 (en) | Half duplex link with isochronous and asynchronous arbitration | |
US6418538B1 (en) | Method and system for scheduling transactions over a half duplex link | |
US6502123B1 (en) | Isochronous system using certified drivers to ensure system stability | |
US6047350A (en) | Computer system which performs intelligent byte slicing on a multi-byte wide bus | |
GB2266979A (en) | Phase register for synchronization of multiple signal processors. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: ADVANCED MICRO DEVICES, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GULICK, DALE E.;REEL/FRAME:009330/0321 Effective date: 19980701 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
AS | Assignment |
Owner name: GLOBALFOUNDRIES INC., CAYMAN ISLANDS Free format text: AFFIRMATION OF PATENT ASSIGNMENT;ASSIGNOR:ADVANCED MICRO DEVICES, INC.;REEL/FRAME:023119/0083 Effective date: 20090630 |
|
FPAY | Fee payment |
Year of fee payment: 12 |
|
AS | Assignment |
Owner name: GLOBALFOUNDRIES U.S. INC., NEW YORK Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:WILMINGTON TRUST, NATIONAL ASSOCIATION;REEL/FRAME:056987/0001 Effective date: 20201117 |