Clock Skew Calculation for Programmable Logic Devices
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current communication systems face challenges in accurately determining clock skew in high-speed serial transceivers, leading to pessimistic calculations that limit design options and operational frequencies due to bandwidth limitations and phase noise, especially in programmable logic devices like FPGAs.
Innovation Solution
A method is introduced to calculate clock skew by subtracting the skew from the nearest common ancestor for two circuit elements, avoiding unnecessary pessimism in skew and slack calculations, allowing for more accurate determination of minimum and maximum arrival times and enabling more flexible circuit layouts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional clock skew calculation methods are used that sum total clock skew for each circuit element, then the calculation is conservative, but the result is overly pessimistic and limits operational frequencies
Solution Approach 1:
The patent extracts and removes the common clock skew component from the calculation by identifying the nearest common ancestor in the clock distribution tree. Instead of summing total skew for all elements along the clock path, the method isolates and subtracts the skew contribution from the nearest common ancestor, leaving only the differential skew that actually affects the timing relationship between source and destination registers.
Solution Approach 2:
The patent segments the clock skew calculation into distinct components: the skew from the nearest common ancestor and the differential skew between source and destination. By dividing the calculation this way, the method can apply appropriate conservatism only where needed (in the differential component) while eliminating unnecessary pessimism from the common ancestor portion.
2Device complexity
If bandwidth-limited feedback loops are used in clock recovery circuits, then the circuit is simpler to implement, but the circuit cannot support high data rates
Solution Approach 1:
The patent changes the operational parameters of the feedback loop by adjusting the phase detector gain and VCO tuning range to achieve the necessary bandwidth for high-speed operation. The method also modifies the loop filter characteristics to maintain stability while achieving wider bandwidth, enabling the circuit to support data rates up to 10 Gb/s and beyond.
3Speed
If oscillators are designed for higher clock speeds to support high data rates, then the data throughput increases, but phase noise increases and degrades clock recovery
Solution Approach 1:
The patent employs a phase-locked loop (PLL) with a feedback mechanism that continuously monitors and corrects phase deviations. The feedback loop compares the VCO output phase with the reference clock phase and adjusts the VCO frequency to minimize phase error, thereby suppressing phase noise and jitter even at high clock speeds.
Solution Approach 2:
The patent implements a low-noise reference clock source and high-quality PLL components that provide a clean, stable clock signal before it enters the feedback loop. This pre-conditioning of the clock signal reduces the burden on the feedback loop and minimizes the generation of phase noise during frequency multiplication.
4Productivity
If integrated circuit manufacturing processes are pushed to higher speeds to meet throughput demands, then data throughput increases, but jitter performance degrades due to device parasitics and propagation delays
Solution Approach 1:
The patent introduces a buffer stage between the clock source and the flip-flops to isolate and compensate for parasitic effects. The buffer acts as an intermediary that drives the clock signal with sufficient strength and consistency, reducing the impact of device parasitics and trace inductance on jitter performance.
Data Source
AI summary
The present invention includes a method and an apparatus, in one embodiment, in the form of an integrated circuit and programmable fabric design tool, for calculating skew in a manner that does not include unnecessary skew values, resulting in a skew value without pessimism. A setup slack determination ensures that data launched or transmitted from a source register reaches the destination register within a specified maximum cycle time and is defined as the difference between a minimum (early) destination time and a maximum (late) source time without unnecessary skew values. A hold check slack determination ensures the data does not “race” from the source register to the destination register on the same clock edge and is calculated as a difference between a maximum (late) destination time and a minimum (early) source time without unnecessary skew values. A circuit's operational frequency and layout are based upon the method for calculating skew.


