Forum Discussion
Altera_Forum
Honored Contributor
12 years agoIf there's no path between the clocks, the set_clock_groups doesn't do anything. It's like putting a set_false_path on a path that doesn't exist. Now, users might do this to show that they don't exist in case the design changes and a path is added, but it's up to the user.
Note that I would do it in one-line: set_clock_groups -asynchronous -group {clk1} -group {clk2} This constraints cuts timing between clk1 and clk2. (The [get_clocks] is implied since the constraint only works on clocks, so you can leave it out if you want). When you do a constraint with a single clock, like so: set_clock_groups -asynchronous -group {clk1} That means to cut timing from clk1 to all other clocks in the design. In your two clock design, that's fine, but it's an implicit cut and that can be dangerous. Let's say 2 months from now someone adds clk3, and it's related to clk1. With the way the constraint is set up, clk1 is cut from all other clocks including clk3, so now those paths are cut. If the user wanted them analyzed, they would have problems. I try to always have 2 or more groups in my set_clock_groups assignment. Note that I talk a lot about set_clock_groups in the first chapter of the TimeQuest User Guide on the www.alterawiki.com