04-22-2012 06:45 PM
Are you asking about this set of constraints?
// Constrain BUFGCTRL net away from clock region //
NET "Some_BUFH_Net" TNM_NET = "TN_Some_BUFH_Net" ;
TIMEGRP "TN_Some_BUFH_Net" AREA_GROUP = "CLKAG_Some_BUFH_Net" ;
AREA_GROUP "CLKAG_Some_BUFH_Net" RANGE = CLOCKREGION_X0Y0, CLOCKREGION_X0Y1, CLOCKREGION_X1Y1, CLOCKREGION_X0Y2, CLOCKREGION_X1Y2, CLOCKREGION_X0Y3, CLOCKREGION_X1Y3, CLOCKREGION_X0Y4, CLOCKREGION_X1Y4, CLOCKREGION_X0Y5, CLOCKREGION_X1Y5, CLOCKREGION_X0Y6, CLOCKREGION_X1Y6, CLOCKREGION_X0Y7, CLOCKREGION_X1Y7, CLOCKREGION_X0Y8, CLOCKREGION_X1Y8, CLOCKREGION_X0Y9, CLOCKREGION_X1Y9, CLOCKREGION_X0Y10, CLOCKREGION_X1Y10, CLOCKREGION_X0Y11, CLOCKREGION_X1Y11 ;
I think this part is a little confusing. The name "Some_BUFH_Net" seems to imply that this
constraint is applid to the clock driven by a BUFH, whereas the text seems to indicate that
this constraint should be applied to a clock driven by a BUFGCTRL. The point of this area constraint
is to locate all loads of the BUGCTRL net in clock regions not served by the BUFH that was
selected in step 2.
04-22-2012 07:05 PM
No, the "Some_BUFH_Net" is really applied to the clock driven by a BUFH.
I tried that and it did work.
that's why I have wonder about the constraints
and only the tree of life forever!
04-23-2012 05:37 AM
The fact that it worked in your case does not prove that this is the correct way to constrain
the BUFH net. It probably means that you didn't use the BUFG that would otherwise have
used the spine taken by this BUFH.