Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Clock uncertainty in FPGA tools

Status
Not open for further replies.

Dinoc

Newbie level 3
Joined
Dec 9, 2015
Messages
4
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
32
Hi all,

I have a doubt related to clock uncertainty in the FPGA design flow using (for example) Quartus.
Why should someone want to overwrite the clock uncertainty generated by "derive_clock_uncertainty" using the "set_clock_uncertainty"?
Isn't the derived uncertainty enough precise to be trusted by the designer?

Thanks in advance
 

According to the documentation derive_clock_uncertainty propagates the uncertainty to the destination setup and hold calculations.

The set_clock_uncertainty is used to set the uncertainty of clocks coming in on the pins of the device using a virtual clock, i.e. the oscillator on the board driving the clock.
 
  • Like
Reactions: Dinoc

    Dinoc

    Points: 2
    Helpful Answer Positive Rating
Thanks for the answer :thumbsup:
Anyway, the result of "derive_clock_uncertainty" is a set of "set_clock_uncertainty" assigned to each internal (PLL-generated) clock.
My doubt was how are these uncertainties extracted? Does the tool take into account the FPGA technology (and the routing) to assign them?
I see your point on virtual clocks but you can also use the set_clock_uncertainty for internal clocks, not only the one coming in on the input pins.
I don't see any reason of doing that internally adding uncertainty to the routing-aware uncertainties.
Do I miss any point?

Thanks agin
 

When deciding what's appropriate in a SDC setup, I primarily refer to Ryan Scovilles "TimeQuest User Guide" see .

Secondly the Quartus SDC reference manual and the Synopsis timing constraints user guide.

The former says that set_clock_certainty would be rarely used in a typical design flow.

If at all, I would rather use the -add option than ignoring the previously derived uncertainty numbers.
 
  • Like
Reactions: Dinoc

    Dinoc

    Points: 2
    Helpful Answer Positive Rating
The former says that set_clock_certainty would be rarely used in a typical design flow.

If at all, I would rather use the -add option than ignoring the previously derived uncertainty numbers.

Thanks, this was exactly what I was guessing, especially when the Scovilles' guide says "most designs never use this constraint (set_clock_uncertainty) and rely on derive_clock_uncertainty, which models all internal clock effects for the user".

Any other opinion about the topic is welcome.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top