Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronic 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.

Register Log in

Causes of Hold Time Violation in FPGA

Status
Not open for further replies.

shaiko

Advanced Member level 5
Joined
Aug 20, 2011
Messages
2,641
Helped
302
Reputation
606
Reaction score
297
Trophy points
1,363
Activity points
18,256
Hello,

Given a specific clock frequency with zero skew - large combinatorial circuits between registers can cause a Setup Time violation.

But what can cause Hold Time violations ?
 

shaiko

Advanced Member level 5
Joined
Aug 20, 2011
Messages
2,641
Helped
302
Reputation
606
Reaction score
297
Trophy points
1,363
Activity points
18,256
Thanks dpaul,

But it doesn't answer my question.
From what I've seen, the examples of Hold Time Violation in the post are attributed to clock skew.

My question is:
What can cause hold time violations other than skews in the clock tree?
 

sharath666

Advanced Member level 2
Joined
Apr 4, 2011
Messages
552
Helped
126
Reputation
252
Reaction score
124
Trophy points
1,323
Location
India
Activity points
3,830
As far as I am aware, the flops within an FPGA are designed in such a way that C->Q delay is always greater than the hold time. So you cannot face hold time violations in an FPGA.
 
  • Like
Reactions: shaiko

    shaiko

    points: 2
    Helpful Answer Positive Rating

shaiko

Advanced Member level 5
Joined
Aug 20, 2011
Messages
2,641
Helped
302
Reputation
606
Reaction score
297
Trophy points
1,363
Activity points
18,256
FPGA are designed in such a way that C->Q delay is always greater than the hold time.
Thanks sharath666,
That's the conclusion I was coming to...

Taking it a step further and thinking ASIC (not FPGA):
A clock network has zero skew and is populated with flip-flops that have extremely fast time to output. The flip-flops are also packed very closely together so the signal propagation delay is minimal.

Is it correct to say that such a design is very prone to hold time violations?
 

sharath666

Advanced Member level 2
Joined
Apr 4, 2011
Messages
552
Helped
126
Reputation
252
Reaction score
124
Trophy points
1,323
Location
India
Activity points
3,830
Yes. Hold time violations are very common in ASICs. They are usually fixed post P&R by adding buffers in the data path so that data stays a bit longer.
 
  • Like
Reactions: shaiko

    shaiko

    points: 2
    Helpful Answer Positive Rating

ads-ee

Super Moderator
Staff member
Joined
Sep 10, 2013
Messages
7,655
Helped
1,774
Reputation
3,556
Reaction score
1,724
Trophy points
1,393
Location
USA
Activity points
57,836
FPGA registers, by design, would ensure that two DFFs connected from Q to D wouldn't require any extra logic to meet hold time...
Think about it, to add a buffer delay means you would have to add a LUT.

If you look at the place and route results, clock tree skew is an issue with FPGA in that the tools have to do route throughs to fix hold time problems. Xilinx even has as part of their reports the number of route throughs used.
 
  • Like
Reactions: shaiko

    shaiko

    points: 2
    Helpful Answer Positive Rating
Status
Not open for further replies.
Toggle Sidebar

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top