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.

what are the options available to increase the operating frequency of a digital design?

Status
Not open for further replies.

anilineda

Member level 3
Joined
Mar 10, 2016
Messages
54
Helped
2
Reputation
4
Reaction score
1
Trophy points
8
Activity points
466
Hello all,


Is there any way of increasing the rated speed of the design , otherthan modifying the code.
i thought of physical constriants to constraint routing paths in fpga fabric which will alter the longer paths to smaller ones and hence increases the operating speed . (educate me, if im wrong anywhere)

so,can i do something with timing constraints to UP the operating frequency without violating the paths .? if yes, what are those and give me the reference to know more.

regards,
Anil
 
Last edited by a moderator:

first, if you are asking about FPGAs, this is the wrong subforum.

you can tweak the constraints all you want, but assuming you will do a better job than the tools for a large sized design is not realistic. there is no magic knob you can play with and get more speed out of a design.
 

@anilineda,

You can try to adjust the timing constraints. This might work if the design can meet them. You can also try enabling various optimizations which could allow a tradeoff between area and performance.

This might not work and timing might not be met. At that point, you would need to look into architectural or device changes.
 

If your design can't meet timing constraints, and you've tried different optimizations (as suggested) then you are probably going to have to change your design. You could also try manually floorplanning, but I've never had any great improvements doing that.
Your timing report should tell you where your problems are.
Also, look at false/multi cycle paths. You might be able to get some relief there.
 

You could also try manually floorplanning, but I've never had any great improvements doing that.
I wouldn't look at manual floorplanning as as improving timing but making your timing more consistent from run to run on paths that should always make timing but for some reason the placement is inconsistent and results in timing problems. This is something that used to happen a lot in ISE for DDR interfaces on older parts like Spartan 3 and the V4.

Also both ISE and Quartus have register retiming, which can be enabled that can move FFs around to balance the logic between FFs. This is not available in Vivado AFAIK (I haven't installed any of the 2016.x versions).
 

So basically you want more performance without changing
anything but the constraints? How heroic.

Do you even know what your timing bind really is?

Maybe it's something simple like too much combo logic
depth between registers. But to fix that you might have
to (oh, noes!) touch the design.
 

If you expect your design to meet timing (or functionality or utilization or...) without any modifications, perhaps you've chosen the wrong career path.
 

If you expect your design to meet timing (or functionality or utilization or...) without any modifications, perhaps you've chosen the wrong career path.


perhaps that you have not read my question properly.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top