I2C Oscillator Prescale Calibration for Synchronized LED Blinking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional LED blinking applications using I2C Bus devices with independent oscillators face challenges in synchronizing blink frequencies due to device-to-device frequency variations caused by process, voltage, and temperature differences, leading to visible discrepancies in LED operation.
Innovation Solution
The introduction of new I2C general call commands, MEASURE PULSE and RESET PRESCALE, allows for on-demand prescale calibration across multiple devices, enabling a master device to measure and compute appropriate prescale factors for slave devices to harmonize their oscillator frequencies, eliminating the need for additional pins.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If independent on-board oscillators are used in each I2C device, then device autonomy and reduced I2C traffic are improved, but device-to-device frequency variations cause synchronization problems
Solution Approach 1:
The patent changes the prescale parameter dynamically based on measured oscillator frequency. Each device measures its actual oscillator frequency and calculates a custom prescale value to compensate for frequency variations, transforming a fixed parameter system into an adaptive one that maintains synchronization despite hardware variations
Solution Approach 2:
The patent implements a feedback loop where devices measure their own oscillator frequency, compare it to the target frequency, and adjust the prescale value accordingly. This closed-loop control ensures that frequency deviations are detected and corrected, maintaining reliable synchronization across all devices
2Device complexity
If conventional fixed prescalers are used, then device complexity is reduced, but frequency calibration and synchronization become impossible
Solution Approach 1:
The patent transforms the static, fixed prescaler into a dynamic, adjustable parameter. The prescale value is no longer hardcoded but is calculated and programmed based on measured frequency, allowing the system to adapt to actual oscillator characteristics while maintaining a relatively simple device structure
Solution Approach 2:
The patent performs frequency measurement and prescale calculation during device initialization or calibration phase before actual operation. This preliminary action ensures that each device is pre-configured with the correct prescale value needed for synchronization, eliminating the need for complex real-time adjustment mechanisms
3Reliability
If external system clock is used to clock all I2C devices, then frequency synchronization is improved, but additional pins and device complexity increase
Solution Approach 1:
The patent extracts the clock synchronization function from the external domain and implements it internally within each device. Instead of requiring an external system clock signal routed to all devices, each device independently measures its own oscillator and calculates the appropriate prescale value to achieve synchronization, eliminating the need for additional clock pins
Solution Approach 2:
The patent enables each device to self-calibrate its oscillator frequency by measuring it and automatically programming the correct prescale value. This self-service approach eliminates the need for external calibration equipment or additional synchronization pins, as each device independently configures itself for proper operation
Data Source
AI summary
A system and method for synchronizing otherwise independent oscillators private to I2C Bus slave devices. An I2C Bus master device is capable of issuing two new general call commands, MEASURE PULSE and RESET PRESCALE. The I2C Bus slave devices respond to the MEASURE PULSE command by returning a digital count related to the number of ticks its local, private oscillator cycles through during a signal pulse on the I2C Bus. All such I2C Bus slave devices measure the same signal pulse on the I2C Bus, so the differences in the digital measurements returned during the MEASURE PULSE command are proportional to their respective oscillator frequencies. The various digital measurements returned are used to calculate appropriate oscillator prescale factors that will harmonize the final product frequencies of all of the local oscillators on all of the I2C Bus slave devices in the system.


