I have heard that it is possible to constrain the placement of an entire clock domain to particular clock regions. How is that done?
NOTE: This Answer Record applies to Virtex-II and newer architectures.
This can be done by defining a TIMEGRP, assigning the TIMEGRP to an AREA_GROUP, and then assigning the AREA_GROUP to a list of Clock Regions.
The following is a sample of the UCF syntax used to assign an entire clock domain to clock regions:
NET "clk1" TNM_NET = "TNM_clk1" ;
TIMEGRP "TNM_clk1" AREA_GROUP = "AG_clk1" ;
AREA_GROUP "AG_clk1" RANGE = CLOCKREGION_X0Y4,CLOCKREGION_X0Y5,CLOCKREGION_X0Y6,CLOCKREGION_X0Y7 ;