Free-Running Oscillator Clocking for PVT-Resilient Multi-Core Domains
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Integrated circuit (IC) design faces challenges in managing process, voltage, and temperature (PVT) variations, leading to inefficiencies in clocking digital systems, particularly as technology scales to smaller geometries and the number of processor cores increases, resulting in significant margins that waste available time and complicate synchronous operation.
Innovation Solution
Implementing free running oscillators (FROs) that adapt to PVT variations by synchronizing clock signals across a chip or clock domain, using ring oscillators or other implementations, ensuring the clock signal runs at the lowest frequency determined by the worst PVT region, thereby alleviating synchronization challenges and reducing margins.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Stability of the object's composition
If a central clock is used to synchronize operations across the chip, then synchronous operation is achieved, but significant margins are required that waste available time
Solution Approach 1:
The patent divides the chip into multiple clock domains, each with its own free-running oscillator. This segmentation allows each domain to operate independently with its own timing, eliminating the need for large global synchronization margins while maintaining local synchrony within each domain.
Solution Approach 2:
Each clock domain is configured with local oscillators that adapt to local PVT conditions. This local quality approach allows each region to operate at optimal frequency based on its specific process, voltage, and temperature characteristics, rather than being constrained by worst-case global conditions.
2Productivity
If the chip is designed to operate at high frequency under nominal conditions, then performance is improved, but the chip fails to operate under worst-case PVT conditions
Solution Approach 1:
The patent implements dynamic frequency adjustment within each clock domain based on actual operating conditions. Oscillators automatically adapt their frequency to PVT variations, allowing the system to maintain reliable operation across all conditions while maximizing performance when conditions are favorable.
Solution Approach 2:
The system changes operational parameters (frequency) dynamically based on PVT conditions. Each clock domain monitors and adjusts its operating frequency to match actual process, voltage, and temperature conditions, ensuring reliable operation from worst-case to best-case scenarios.
3Reliability
If large margins are provided in clock period, then reliability under worst-case conditions is improved, but productivity is reduced due to wasted time
Solution Approach 1:
By segmenting the chip into multiple clock domains with independent oscillators, the patent eliminates the need for large global margins. Each domain only needs to account for local variations, significantly reducing the margin requirement while maintaining reliability.
Solution Approach 2:
The system dynamically adjusts operating frequency based on actual PVT conditions, allowing productive use of clock period when conditions are good while maintaining reliability when conditions deteriorate, without requiring large static margins.
4Ease of operation
If synchronous operation is used across multiple processor cores, then coordination is simplified, but the number of cores that can be effectively clocked is limited by PVT variations
Solution Approach 1:
The patent organizes multiple processor cores into separate clock domains, each with its own oscillator. This segmentation allows each domain to operate independently with simple local synchronization, while the overall system can support many more cores by adding independent domains rather than complicating a single global clock system.
Data Source
AI summary
A system of free running oscillators synchronized to the lowest frequency running one and following PVT variation generates a system clock. A method is particularly applicable to clock relatively small clock domains within a multi-core chip containing thousands of cores, and where the clock domain encompasses one or more cores and additional logic blocks. The resulting system clock is divided by 2k using latches or flip-flops to achieve a symmetric 50-50 duty cycle of the system clock. Further, such PVT insensitive system clock can be used as a reference for a PLL or DLL generated clock for the domain.


