WO2023076571A2 - Wireless device clock synchronization - Google Patents
Wireless device clock synchronization Download PDFInfo
- Publication number
- WO2023076571A2 WO2023076571A2 PCT/US2022/048186 US2022048186W WO2023076571A2 WO 2023076571 A2 WO2023076571 A2 WO 2023076571A2 US 2022048186 W US2022048186 W US 2022048186W WO 2023076571 A2 WO2023076571 A2 WO 2023076571A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- wireless receiver
- timing
- circuit
- clock
- media content
- 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.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
- H04M1/72409—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
- H04M1/72412—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories using two-way short-range wireless interfaces
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
- H03L7/08—Details of the phase-locked loop
- H03L7/099—Details of the phase-locked loop concerning mainly the controlled oscillator of the loop
- H03L7/0991—Details of the phase-locked loop concerning mainly the controlled oscillator of the loop the oscillator being a digital oscillator, e.g. composed of a fixed oscillator followed by a variable frequency divider
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/06—Receivers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/38—Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2250/00—Details of telephonic subscriber devices
- H04M2250/02—Details of telephonic subscriber devices including a Bluetooth® interface
Definitions
- the present disclosure generally relates to clock signal generation in wireless transmission and content delivery systems.
- a wireless enabled device may include a source device, and one or more accessory devices. Each device has a respective wireless communication circuit with an antenna.
- the source device includes a microphone and the accessory devices include audio speakers with which the accessory generates analog signal outputs for a user.
- timing synchronization can be important.
- a Bluetooth Low Energy (LE) audio system for example, contains multiple clocks among all the devices in a network.
- Each device may contain a separate clock signal for the audio and wireless subsystems.
- a source device audio subsystem clock (CAS) and a source device wireless subsystem clock (Cws) may be included.
- the accessory devices may be constructed similarly.
- Each clock can drift over time due to inaccuracies of CAS and Cws. For example, if CAS and Cws each have an inaccuracy of 20 parts per million (ppm), the worstcase drift between both the clocks is 40-ps after 1 second. Using 7.5-ms frame durations, this results in a possible audio frame overrun or underrun every 3.2 minutes. Drift can also occur between CAS and Cws even if they originate from the same oscillator.
- the audio subsystem may use a clock rate that is a non-integer multiple of the wireless subsystem clock, and the fractional part of the clock divide results in clock drift.
- clocks are also sensitive to ambient temperature and, accordingly, may change accuracy over time. Accordingly, drift may vary over long periods of time as well.
- a wireless receiver for receiving and outputting media content received from a wireless transmitter.
- the wireless receiver includes a wireless receiver circuit including an antenna configured to receive digital media content wirelessly from a source transmitter of a source device.
- the wireless receiver further includes a media content processing circuit configured to receive digital media data from the wireless receiver circuit and prepare the received digital media data for output.
- the wireless receiver includes a media content output circuit configured to receive the prepared digital media data and to output the prepared digital media data with a defined timing.
- the wireless receiver includes an oscillator.
- the wireless receiver includes a first clock signal generator coupled to an output of the oscillator, and the first clock signal generator is configured to generate first timing signals for the media content processing circuit and the media content output circuit.
- the wireless receiver includes a clock compensation circuit coupled to the first clock signal generator.
- the clock compensation circuit is configured to: (i) receive a timing reference from the source transmitter of the source device, (ii) receive the first timing signals from the first clock signal generator, (iii) adjust a phase and/or adjust a frequency of the first timing signals, and (iv) output adjusted first timing signals.
- the wireless receiver includes a second clock signal generator configured to receive the adjusted first timing signals from the clock compensation circuit and to output second timing signals for clocking the media content output circuit.
- the clock compensation circuit is configured to compare the second timing signals to a timing reference received from the source transmitter of the source device.
- the media content output circuit includes a digital to analog converter coupled to an output transducer.
- the output transducer includes a speaker
- the digital media content includes digitally encoded audio
- the second clock signal generator and the media content output circuit are on a different integrated circuit from the first clock signal generator.
- the clock compensation circuit is configured to receive a first timing reference signal from the wireless receiver circuit. In some embodiments of the invention, the clock compensation circuit is configured to receive a second timing reference signal from the media content output circuit. In some embodiments of the invention, the clock compensation circuit includes a feedback loop that compares the first timing reference signal from the wireless receiver circuit to the second timing reference signal from the media content output circuit. In some embodiments of the invention, the clock compensation circuit includes at least one of a drift compensation circuit or a phase compensation circuit.
- the wireless receiver device is a first wireless receiver device of a plurality of wireless receiver devices, and each wireless receiver device of the plurality of wireless receiver devices is coupled to the source transmitter of the source device and configured to receive the timing reference from the source device.
- each wireless receiver device of the plurality of wireless receiver devices are configured to determine an offset based on detecting a time difference between the timing reference from the source device and a timing signal from a corresponding clock signal generator at each wireless receiver device and adjust the timing signal from the corresponding clock signal generator to a predetermined value based on the offset.
- a method of synchronizing output timing between two or more independent wireless receivers may include, at a first wireless receiver device including a processor, receiving a first timing signal from a wireless communication subsystem of the first wireless receiver device.
- the method may include receiving a second timing signal from an output subsystem of a second wireless receiver device that is different than the first wireless receiver device.
- the method may include comparing the first timing signal and the second timing signal to determine whether there is a clock drift between the first timing signal and the second timing signal.
- the method may include, in response to determining that there is a clock drift between the first timing signal and the second timing signal, adjusting at least one of: (i) a first clock signal associated with the wireless communication subsystem of the first wireless receiver device, or (ii) a second clock signal associated with the output subsystem of the second wireless receiver device.
- Figures 1A and 1 B illustrate a Bluetooth low energy audio system having multiple clocks, in accordance with some example embodiments.
- Figures 2A and 2B illustrate Presentation Delay and Output Path Delay.
- Figure 3 illustrates a just-in-time transmission, in accordance with some example embodiments.
- Figure 4 is a block diagram of a source and/or accessory device.
- FIG. 5 is a block diagram of an accessory device having a drift compensation system, in accordance with some example embodiments.
- Figure 6 is a block diagram of a drift compensation feedback loop, in accordance with some example embodiments.
- Figure 7A is a block diagram of an implementation of the feedback loop of Figure 6.
- Figure 7B is state machine flow chart which may be used with the feedback loop of Figure 7A.
- FIG. 8A illustrates instantaneous errors of a synchronization distribution unit (SDU) synchronization reference, in accordance with some example embodiments.
- SDU synchronization distribution unit
- Figure 8B illustrates efficacy of sample averaging, in accordance with some example embodiments.
- Figure 9A illustrates a block diagram of an output audio path with Presentation Compensation, in accordance with some example embodiments.
- Figure 9B is a flow chart of a presentation compensation state machine, in accordance with some example embodiments.
- Figure 10 is a block diagram of a wireless receiver device having a drift compensation system, in accordance with some example embodiments.
- Figure 11 is a flowchart representation of a method for providing customized feedback content during meditation based on physiological data in accordance with some implementations.
- a wireless enabled device may include a source device 12, and one or more accessory devices 16a and 16b. Each device has a respective wireless communication circuit with an antenna 14, 18a, 18b.
- the source device includes a microphone 20 and the accessory devices 16a, 16b include audio speakers 20a and 20b with which the accessory generates analog signal outputs.
- timing synchronization can be important.
- a Bluetooth LE audio system for example, contains multiple clocks among all the devices in a network such as illustrated in Figure 1 B.
- Each device may contain a separate clock signal for the audio and wireless subsystems.
- CAS is illustrated as a source device 12 audio subsystem clock
- Cws is illustrated as a source device wireless subsystem clock.
- the accessory devices 16a, 16b may be constructed similarly.
- Each clock can drift over time due to inaccuracies of CAS and Cws. For example, if CAS and Cws each have an inaccuracy of 20 parts per million (ppm), the worstcase drift between both the clocks is 40-ps after 1 second. Using 7.5-ms frame durations, this results in a possible audio frame overrun or underrun every 3.2 minutes. Drift can also occur between CAS and Cws even if they originate from the same oscillator.
- the audio subsystem may use a clock rate that is a non-integer multiple of the wireless subsystem clock, and the fractional part of the clock divide results in clock drift.
- Clocks are also sensitive to ambient temperature and, accordingly, may change accuracy over time. Accordingly, drift may vary over long periods of time as well.
- the synchronization methods and apparatus described herein may in some embodiments be advantageously applied in a Bluetooth Low Energy (BLE) protocol environment.
- BLE Bluetooth Low Energy
- a discussion of one or more challenges related to BLE synchronization of audio and wireless clocks follows, with particular attention to clocking the output of the audio subsystems of the accessories. Clocks between wireless systems may also drift.
- the Bluetooth LE specification defines how wireless systems synchronize clocks.
- TWS Truste Wireless Stereo
- the left and right accessory devices should present corresponding audio to the user at the same time.
- independent accessory e.g., left earbud and right earbud
- the left and right audio frames may be transmitted at different time slots by the source audio device. Consequently, each accessory device receives audio frames at different times. Rendering audio immediately after receiving an audio frame will result in TWS audio systems rendering unsynchronized audio.
- Output Delay The Bluetooth LE protocol requires the rendered output to be presented at a specific time.
- Figures 2A and 2B describe a parameter called Presentation_Delay which is the amount of time from the synchronization distribution unit (SDU) Synchronization Reference to the time when audio exits the transducer.
- SDU synchronization distribution unit
- An audio receiver device must delay rendering output until the specified time. Any system delays due packet handling, decoding, I/O transfer, ADC group delay, etc. must be accounted for in the amount of buffering time. These system delays are summed together and collectively referred to as Output Path Delay.
- the Output Path Delay is different for each accessory device as well as for each packet received, for example, as illustrated in Figure 2B.
- Adjustment Precision The desired precision for spatial audio is less than a single audio sample. In the case of 48-kHz sampling rate for high quality audio, that is 20.8- ps. Accordingly, a high precision delay adjustment mechanism should be provided to achieve left and right synchronization.
- Packet Loss Timing Estimation - Bluetooth LE accessory devices may lose packets.
- the ISO feature allows for retransmission and reduces the probability of packet loss. However, packet loss is still possible. In the event an accessory device loses packets, it also fails to obtain a timing reference by the source device. The loss of timing reference must be accounted for by the receiving device to maintain audio synchronization.
- the wireless subsystem provides received packet timestamps in absolute time.
- the presentation delay is computed using the wireless subsystem timestamp as a start reference.
- the wireless subsystem executes on one processor core and the presentation compensation algorithm executes on a different processor core.
- a common absolute time clock reference is needed for the processor responsible for computing the actual presentation delay.
- Board Dependent Calibration - Calibration for board dependent delay may be needed for audio applications which require high audio synchronization precision. Manufacturing process can measure this board dependent delay which can be used by the presentation compensation algorithm.
- Drift Compensation is a closed loop control system for synchronizing the audio clock with the wireless clock on an accessory device. Since the wireless clocks between the source and accessory devices are already synchronized, the accessory device can use the wireless clock to synchronize its audio clock with the source device.
- Figure 5 is a block diagram of an accessory incorporating clock drift compensation in accordance with some embodiments.
- Figure 6 is a block diagram of a drift compensation feedback loop that may be used in the example accessory shown in Figure 5.
- FIG. 7A is a specific implementation of a drift compensation feedback loop.
- an Audio Phase-Locked Loop (e.g., nRF5340) is used to adjust the master clock (MCLK) to an external audio codec (e.g., MAX9867).
- the external audio codec uses the MCLK reference to return the I2S audio timing signals. These I2S audio timing signals are synchronized with the clock of the source device.
- circuit computes a delta time (dDC) which is the sum of drift between the wireless and audio subsystems.
- dDC delta time
- the accessory device wireless system will appear to drift with respect to the local clock.
- the external audio codec will also drift with respect to the local clock.
- the Drift Detect block will account for both drift errors.
- the Drift Detect block processes every audio frame received or expected reception (i.e., lost frame).
- the wireless subsystem delivers the audio subsystem a single audio frame at a time with a timestamp. This timestamp is the SDU Synchronization Reference for the received audio frame. If an audio frame is lost, the wireless subsystem will send an estimated SDU Synchronization Reference for use by the Drift Detect block.
- the Drift Detect block measures the drift by computing the amount of error between the wireless and audio clocks using the local clock as a reference (e.g., left-right clock (LRCLK)).
- the wireless subsystem error is measured using the SDU Synchronization Reference.
- the audio subsystem error is measured by examining the I2S timestamp of the codec, e.g., FRAMESTART.
- the Clock Adjust block computes the new clock frequency for the Audio PLL.
- the Audio PLL is adjusted such that the speed of the output clock signal to the codec (e.g., MCLK) drifts at the same rate as the audio packets are received from the wireless.
- the Enable input allows the Audio PLL adjustment to be enabled or disabled. Disabling allows the complete Drift Compensation algorithm to execute but does not apply the compensated value.
- Drift Compensation behavior is driven by a state machine. This state machine is called regularly to compute error and set the compensated Audio PLL frequency. See, for example, Figure 7B.
- Figure 7B provides an exemplary implementation of a drift compensation state machine process.
- the I NIT state waits for wireless data path initialization. Since no wireless ready signal is available in the audio subsystem, a short busy wait is used to transition out of this state.
- the CALI B state performs an open loop calibration of the Audio PLL. Compensation is calculated using drift errors by the wireless clock alone without any feedback from the audio subsystem. Once the center frequency is computed, the state machine transitions to the next state.
- the OFFSET state makes coarse but quick corrections to the audio clock. Once the detected error reaches a certain low threshold, the state machine transitions out of this state.
- the LOCKED state makes only fine corrections to the audio clock. If the detected error exceeds a certain large threshold, the state machine returns to the OFFSET state for coarse clock corrections.
- averaging may be used to smooth out large swings of errors detected by adjacent samples.
- the maximum delta between adjacent sampling of SDU Synchronization Reference is 14-ps. Large swings results in an overactive loss of lock in the state machine. Averaging the samples effectively narrows the error range as illustrated in Figure 8B. Averaging just a few samples (N) can effectively eliminate large range of errors.
- Presentation Compensation computes the time and output path delay (or offset) to present rendered audio at the specified Presentation_Delay time. See, for example, Figure 9A.
- the Presentation Compensation calculation is called with every received audio frame from the wireless subsystem. This variable is set by an upper layer protocol subsystem. Presentation Compensation behavior may also be driven by a state machine, as illustrated in Figure 9B. This state machine is called regularly to compute the presentation delay (dPC).
- dPC presentation delay
- the I NIT state waits for wireless data path initialization. Since no wireless ready signal is available in the audio subsystem, a short busy wait is used to transition out of this state.
- the MEAS state will measure the expected presentation delay over a period of time. In this state, the average presentation delay is computed.
- the state machine transitions to the locked state. If the error does not fall below the low threshold, then the state machine resets by returning to the I N IT state.
- the LOCKED state means the algorithm is idle.
- the presentation delay is a constant value and does not need adjustment once computed.
- the Drift Compensation state machine will transition this state machine back to the I NIT state if it unlocks.
- Presentation Compensation (dPC) adjustments will delay audio samples up until the computed output delay. Delay is achieved by increasing the delta between the producer and consumer pointers in the Audio FIFO. Increasing the delta between the pointers effectively increases the output delay at the resolution of an audio block. Presentation Delay values expressed in the “Basic Audio Profile” specification are 40-ms. The Audio FIFO implementation uses audio block sizes evenly divisible by the audio frame size, for example, 1-ms or 1.25 ms. Adjustment in resolutions of 1-ms are possible with the current implementation.
- the Audio FIFO is implemented as a circular buffer of audio blocks. Each audio block is index with a producer and consumer pointer. Audio block pointers increment at N+1 will wraparound to the beginning of the array. A single audio block is used to exchange data (input, output or both) with the I2S peripheral. The small audio block sizes allow for improved end-to-end latency.
- the Audio FIFO is organized to always store stereo samples using signed 16-bit integers.
- the sampling rate is configured at runtime. This allows for efficient I2S data exchange with common stereo codecs, e.g., the Maxim MAX9867.
- Audio FIFO Due to the fixed organization of the Audio FIFO, various audio block manipulation routines are provided to format wireless audio data. Manipulation of the stereo samples occurs prior to encoding or after decoding of the audio frame. The manipulation is specific to the audio frame and may convert stereo to mono, mono to stereo, bit precision (e.g., 8, 16, 24, or 32 bit) or sample rate (e.g., 8, 16, 32, or 48 kHz.
- bit precision e.g. 8, 16, 24, or 32 bit
- sample rate e.g. 8, 16, 32, or 48 kHz.
- a timer ISR is used to process audio input JIT, for example as illustrated in Figure
- the timer is setup to expire such that there is enough time to (1) encode all audio frames (i.e. , maximum encode time) for each stream (left, right or both), and (2) submit audio frames to the wireless within the ISO setup time.
- the audio input processing also ensures identical left and right Sample Start Reference are used to encode audio frames.
- Audio input processing is sensitive to maximum processing of frames. Preempting or delaying processing will result in missed audio servicing. This is not catastrophic but will result in audio artifacts.
- the audio input processing should use the highest thread or ISR priority when possible.
- the Presentation Compensation calculations require a common clock reference between different CPUs.
- One of the CPUs uses this time-base for receive packet timestamps.
- a different CPU uses this time-base to timestamp I2S operation.
- One possible implementation on the nRF5340 is to use a DPPI to trigger a common start between the CPUs timer peripheral. These timers once running should not stop to remain synchronized.
- Audio block size may be modified to 1.25-ms boundaries to divide evenly.
- the 1.25-ms will match all possible configurations of ISO intervals available to standard Bluetooth LE.
- an on-chip PLL can be used to adjust the output circuit clock by measuring the error between an off-chip I2S codec an on-chip wireless clock signal and then correcting by making adjustments with the on-chip PLL.
- an off-chip PLL that is part of the output codec may be used to adjust the output clock signal timing.
- corrections to the output clock signal can be made by making adjustments with the off-chip PLL.
- FIG. 10 is a block diagram of a wireless receiver device 1000 having a drift compensation and/or phase compensation system, in accordance with some example embodiments. While certain specific features are illustrated, those skilled in the art will appreciate from the present disclosure that various other features have not been illustrated for the sake of brevity, and so as not to obscure more pertinent aspects of the implementations disclosed herein.
- Figure 10 illustrates a BLE protocol environment and BLE synchronization of audio and wireless clocks for the communications between a wireless receiver device 1000 and the source device 1080.
- there may be one source device 1080 and multiple wireless receiver devices 1000 e.g., a pair of headphones, i.e., ear buds), where each wireless receiver device is configured to synchronize the clock signals based on the source input (e.g., an audio signal).
- the source device 1080 includes the same synchronization components described herein for the wireless receiver device 1000 for a drift compensation and/or phase compensation system (e.g., to synchronize received signals from one or more devices).
- the source device 1080 (or another device) may be utilized for a microphone (or input) synchronization path, where the same synchronization methods described herein may be applied (e.g., in a reverse direction from the wireless receiver device 1000 to the source device 1080).
- Figure 1A speakers may be microphones and the “source” device may be a “receiver” device.
- synchronizing clock signals remain the same, but the direction of the audio path is different (e.g., wireless audio transmitters may be synchronized to a very high precision).
- synchronizing multiple inputs from different microphones may reduce or eliminate background noise echo effects when using multiple microphones, and synchronizing multiple inputs from different microphone input signals may be useful for ambisonic sound capture (e.g., a full-sphere surround sound format), where capturing ambient sounds (especially directional sounds) with multiple microphones needs to be accurate.
- the wireless receiver device 1000 includes a wireless receiver circuit 1010 that includes an antenna 1015 that receives digital media content 1002 from an output transmitter 1085 of a source device 1080.
- a source device 1080 may be a media content transmitting device
- the wireless receiver device may be a device that wirelessly receives media content data and generates media content for playback for a user (e.g., BLE audio).
- the digital media content 1002 may include isochronous transports as specified for Bluetooth LE core specifications (e.g., Broadcast Isochronous Stream (BIS), Connected Isochronous Stream (CIS), etc.), or similar wireless technologies and associated communications protocols.
- the wireless receiver device 1000 includes a media content processing circuit 1020 that receives digital media data 1004 from the wireless receiver circuit 1010.
- the media content processing circuit 1020 is configured to generated prepared digital media data 1026 from the received digital media data 1004.
- the media content processing circuit 1020 is also configured to receive a timing signal (e.g., timing signal -1 1052).
- the wireless receiver circuit 1010 may add timestamps to the received data packet and pass the timestamps along with the digital media data 1004.
- the digital media data 1004 may include isochronous interface packets as specified for Bluetooth LE core specifications (e.g., Bluetooth HCI ISO data packets, etc.), or similar wireless technologies and associated communications protocols.
- the wireless receiver device 1000 includes a media content output circuit 1030 configured to receive the prepared digital media data 1026 and to output prepared digital media data 1035 with a defined timing (e.g., based on a timing signal).
- a media content output circuit 1030 configured to receive the prepared digital media data 1026 and to output prepared digital media data 1035 with a defined timing (e.g., based on a timing signal).
- the wireless receiver device 1000 includes an oscillator 1040.
- oscillator 1040 is a clock generation source which generates a single output frequency.
- the wireless receiver device 1000 includes a first clock signal generator circuit 1050 coupled to an output of the oscillator 1040.
- the first clock signal generator circuit 1050 utilizing the output of the oscillator 1040, may be configured to generate first timing signals (e.g., timing signal -1 1052) for the media content processing circuit 1020 and the media content output circuit 1030.
- the wireless receiver device 1000 includes a drift compensation or phase compensation circuit 1060 that is configured to compensate for clock drift according to embodiments described herein.
- the drift compensation or phase compensation circuit 1060 is coupled to the first clock signal generator circuit 1050 and configured to receive first timing signals (e.g., timing signal -1 1052).
- the drift compensation or phase compensation circuit 1060 is configured to adjust a phase and/or adjust a frequency of timing signals (e.g., timing signal -1 1052), and output adjusted timing signals (e.g., adjusted timing signal -1 1062).
- the first clock signal may be slower than the second clock, and the second clock may adjust a clock signal by lowering the clock frequency until the speed matches the first clock signal.
- the wireless receiver device 1000 includes a second clock signal generator circuit 1070.
- the second clock signal generator circuit 1070 may be configured to receive the adjusted first timing signals (e.g., adjusted timing signal -1 1062) from the drift compensation or phase compensation circuit 1060 and to output second timing signals (e.g., timing signal -2 1072) for clocking the media content output circuit 1030.
- the drift compensation or phase compensation circuit 1060 is configured to compare the second timing signals to a timing reference 1082 received from the source output transmitter 1085 of the source device 1080 to determine whether there is a clock drift between the timing signals.
- the media content output circuit 1030 includes a digital to analog converter (DAC) 1032 coupled to an output transducer 1034.
- the output transducer 1034 includes or is a speaker, and the prepared digital media content 1002 includes digitally encoded audio.
- the drift compensation or phase compensation circuit 1060 is configured to receive a first timing reference signal (e.g., timing reference signal -1 1012) from the wireless receiver circuit 1010. In some implementations, the drift compensation or phase compensation circuit 1060 is configured to receive a second timing reference signal (e.g., timing reference signal -2 1036) from the media content output circuit 1030. In some implementations, the drift compensation or phase compensation circuit 1060 includes a feedback loop that compares the first timing reference signal (e.g., timing reference signal -1 1012) from the wireless receiver circuit 1010 to the second timing reference signal (e.g., timing reference signal -2 1036) from the media content output circuit 1030. For example, a comparison of the two timing reference signals may be utilized to determine whether there is a clock drift between the two signals (e.g., a frequency shift, a phase shift, a combination of the two, and the like).
- a clock drift between the two signals e.g., a frequency shift, a phase shift, a combination of the two, and the like.
- the second clock signal generator circuit 1070 and the media content output circuit 1030 are on a different integrated circuit from the first clock signal generator circuit 1050.
- an integrated circuit 1090 includes the hardware oscillator 1040 and the first clock signal generator circuit 1050
- an integrated circuit 1095 includes the second clock signal generator circuit 1070 the media content output circuit 1030.
- multiple wireless receiver devices may be synchronized to the same wireless transmitter device (e.g., source device 1080) that may include a timing offset.
- the timing offset of each wireless transmitter device may present the media content out of the output transducer 1034 at slightly different times amongst each of the multiple wireless receiver devices. For example, variations in the circuitry and software execution could result in a phase difference between the timing reference signal -2 1036 on each wireless receiver device of the multiple wireless receiver devices, even if each wireless receiver device are all listening to the same source (e.g., source device 1080).
- phase compensation may be used to remove any offset discovered by variations in circuitry and software execution amongst the plurality of wireless receiver devices.
- a phase compensation circuit e.g., drift compensation or phase compensation circuit 1060
- a wireless receiver device 1000 may adjust a time difference to a predefined value such that all wireless receiver devices may have the same offset. For example, adjusting the adjusted time signal 1062 faster or slower will adjust the phase of the media content output circuit 1030 such that the phase may be shifted until the phase aligns to the predefined value.
- multiple sources may be communicatively coupled with one wireless receiver device 1000.
- multiple microphones devices may be connected to a single receiver that synchronizes each received audio signal (e.g., ambisonic audio).
- Figure 11 is a flowchart illustrating an exemplary method 1100.
- a device such as wireless receiver device 1000 ( Figure 10) performs the techniques of method 1100 to adjust at least one clock signal of an output subsystem or a wireless communication subsystem in response to identifying a clock drift according to some implementations.
- the method 1100 is performed on processing logic, including hardware, firmware, software, or a combination thereof.
- the method 1100 is performed on a processor executing code stored in a non-transitory computer-readable medium (e.g., a memory).
- the method 1100 at a first wireless receiver device including a processor, receives a first timing signal from a wireless communication subsystem of the first wireless receiver device.
- the wireless receiver device 1000 receives timing signal -1 1052 from the first clock signal generator circuit 1050 (e.g., a wireless communication subsystem of the first wireless receiver device).
- the method 1100 receives a second timing signal from an output subsystem of a second wireless receiver device that is different than the first wireless receiver device.
- the wireless receiver device 1000 receives a timing reference 1082 from the source device 1080 (e.g., a second wireless receiver device that is different than the first wireless receiver device 1000).
- the method 1100 compares the first timing signal and the second timing signal to determine whether there is a clock drift between the first timing signal and the second timing signal.
- the wireless receiver device 1000 includes a drift compensation or phase compensation circuit 1060 that is configured to compare timing signals to determine whether there is a clock drift between the two signals.
- the method 1100 in response to determining that there is a clock drift between the first timing signal and the second timing signal, adjusts at least one of a first clock signal associated with the wireless communication subsystem of the first wireless receiver device, or a second clock signal associated with the output subsystem of the second wireless receiver device.
- the drift compensation or phase compensation circuit 1060 is configured to resynchronize two clock signals based on determining whether there is clock drift between two received clock signals.
- adjusting the first clock signal or the second clock signal is based on adjusting the phase and/or adjusting the frequency of the first clock signal or the second clock signal.
- the first clock signal is slower than the second clock, and the second clock adjusts by lowering the clock frequency until the speed matches the first clock signal.
- a specific method of measuring the characteristic or property may be defined herein as well.
- the measurement method should be interpreted as the method of measurement that would most likely be adopted by one of ordinary skill in the art given the description and context of the characteristic or property.
- the value or range of values should be interpreted as being met regardless of which method of measurement is chosen.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Circuits Of Receivers In General (AREA)
Abstract
Description
Claims
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US18/702,502 US20250260407A1 (en) | 2021-10-29 | 2022-10-28 | Wireless device clock synchronization |
| EP22888230.4A EP4402809A4 (en) | 2021-10-29 | 2022-10-28 | CLOCK SYNCHRONIZATION OF A WIRELESS DEVICE |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202163273734P | 2021-10-29 | 2021-10-29 | |
| US63/273,734 | 2021-10-29 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2023076571A2 true WO2023076571A2 (en) | 2023-05-04 |
| WO2023076571A3 WO2023076571A3 (en) | 2023-06-08 |
Family
ID=86158568
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2022/048186 Ceased WO2023076571A2 (en) | 2021-10-29 | 2022-10-28 | Wireless device clock synchronization |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20250260407A1 (en) |
| EP (1) | EP4402809A4 (en) |
| WO (1) | WO2023076571A2 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN118138185A (en) * | 2024-05-06 | 2024-06-04 | 广东亿昇达科技有限公司 | A clock synchronization method for parallel connection of DC-DC power modules |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20110075778A1 (en) | 2009-09-29 | 2011-03-31 | Mediatek Inc. | Methods for controlling a main clock source shared between different wireless communications modules and apparatuses using the same |
| EP3644661A1 (en) | 2018-10-26 | 2020-04-29 | Tap Sound System | A synchronization method for synchronizing clocks of a bluetooth device |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7200379B2 (en) * | 2004-03-26 | 2007-04-03 | Broadcom Corporation | Low-power mode clock management for wireless communication devices |
| US7890788B2 (en) * | 2007-07-09 | 2011-02-15 | John Yin | Clock data recovery and synchronization in interconnected devices |
| US8873606B2 (en) * | 2012-11-07 | 2014-10-28 | Broadcom Corporation | Transceiver including a high latency communication channel and a low latency communication channel |
| US9559834B1 (en) * | 2015-01-26 | 2017-01-31 | Altera Corporation | Multi-rate transceiver circuitry |
| US10389486B1 (en) * | 2018-10-05 | 2019-08-20 | Cypress Semiconductor Corporation | Parallel processing of dirty packets in Bluetooth and Bluetooth low energy systems |
-
2022
- 2022-10-28 EP EP22888230.4A patent/EP4402809A4/en active Pending
- 2022-10-28 WO PCT/US2022/048186 patent/WO2023076571A2/en not_active Ceased
- 2022-10-28 US US18/702,502 patent/US20250260407A1/en active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20110075778A1 (en) | 2009-09-29 | 2011-03-31 | Mediatek Inc. | Methods for controlling a main clock source shared between different wireless communications modules and apparatuses using the same |
| EP3644661A1 (en) | 2018-10-26 | 2020-04-29 | Tap Sound System | A synchronization method for synchronizing clocks of a bluetooth device |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP4402809A4 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN118138185A (en) * | 2024-05-06 | 2024-06-04 | 广东亿昇达科技有限公司 | A clock synchronization method for parallel connection of DC-DC power modules |
Also Published As
| Publication number | Publication date |
|---|---|
| EP4402809A2 (en) | 2024-07-24 |
| EP4402809A4 (en) | 2025-07-09 |
| WO2023076571A3 (en) | 2023-06-08 |
| US20250260407A1 (en) | 2025-08-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20250358095A1 (en) | Method and Apparatus for Time Synchronisation in Wireless Networks | |
| JP7148413B2 (en) | Systems and methods for controlling isochronous data streams | |
| AU2006332452B2 (en) | Media data synchronization in a wireless network | |
| US11910337B2 (en) | Synchronization of audio streams and sampling rate for wireless communication | |
| US20190082400A1 (en) | Methods and apparatus for synchronization of media playback within a wireless network | |
| CN108234105B (en) | Clock skew compensation method and related system | |
| US11558170B2 (en) | Phase-locked loop with dual input reference and dynamic bandwidth control | |
| EP2294736A1 (en) | Apparatus and methods for time synchronization of wireless audio data streams | |
| CN110636349B (en) | Audio synchronous playing method for wireless equipment | |
| CN116318510B (en) | Digital conference system and audio clock synchronization method thereof | |
| US20180158468A1 (en) | Device and method for synchronizing speakers | |
| US20250260407A1 (en) | Wireless device clock synchronization | |
| WO2014128360A1 (en) | Synchronization of audio and video content | |
| CN114270735B (en) | Radio equipment for transmitting digital audio streams | |
| WO2007086564A1 (en) | Broadcast station synchronization method and control device | |
| US20080298399A1 (en) | Methods for Synchronizing the Transmission and the Reception of a Media Stream Over a Network | |
| JP2005217787A (en) | Method and system for synchronizing a plurality of equipment having independent clock source, and computer program | |
| EP4348886A1 (en) | Digital signal processor/network synchronization for processing audio data | |
| CN113473425A (en) | Bluetooth low-delay transmission method for audio signals based on PC-SPDIF connection | |
| JP2013153312A (en) | Transmission device, transmission method, and communication system | |
| CN121191531A (en) | An audio resampling method, audio playback device and system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22888230 Country of ref document: EP Kind code of ref document: A2 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2022888230 Country of ref document: EP |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 18702502 Country of ref document: US |
|
| ENP | Entry into the national phase |
Ref document number: 2022888230 Country of ref document: EP Effective date: 20240416 |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22888230 Country of ref document: EP Kind code of ref document: A2 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| WWP | Wipo information: published in national office |
Ref document number: 18702502 Country of ref document: US |