Our system is going under maintenance starting February 14, 2025 at 6:00 PM Pacific and ending February 15, 2025 at 12:00 AM Pacific. During this window, the website may not be reachable. For immediate assistance, please contact techsupport@latticesemi.com.

Article Details

ID: 200
Case Type: faq
Category: Implementation
Related To: Timing Analysis
Family: All FPGA

Search Answer Database

Search Text Image

Diamond: How do user get a reasonable I/O timing report when PLL phase shift is very large?

When user change the PLL phase to improve the Tco, user caan program the PLL phase delay by more than 180 degree, e.g. 315 degree. Its equivalent effect is to advance 45 degree if one clock cycle latency is acceptable. But the Lattice software will always regard it as the delay of 315 degree. Therefore the trace timing tool will add 7/8ths of a clock cycle to the clock insertion delay.


In order to get the expected timing result, user can use the PLL_PAHSE_BACK keyword to direct the trace timing tool to subtract 1/8th of a clock cycle from the clock insertion delay, i.e. advancing 1/8th of a clock cycle.


For example, when the PLL_PHASE_BACK keyword is added, the CLOCK_TO_OUT preference can be something like "CLOCK_TO_OUT ALLPORTS 10.000000 ns CLKPORT "clk" PLL_PHASE_BACK". One thing to be noted is that the real Tco is one clock cycle later than in the trace report with this keyword. User must deal with this one-cycle latency for outputs when using this method.