区域约束的主要目的是关联耦合逻辑,减少后续布线压力,加大资源利用率;约束约束对改善时序的贡献很小,紧的约束(约束面积小)甚至有恶化时序的可能。笔者在microsemi的FPGA芯片项目中,有通过添加区域约束改善时序的实例。
microsemi的约束方法如下:
1. 在Desigh Flow中双击Edit Constraints下的Chip Planner,打开如下窗口,左侧窗口显示的是项目中的模块,点击其中一个,右边会以白色显示出该模块所有的器件布局。
2. 点击图中图标“Create Inclusive”,表示画出的区域中可包含其他模块用到的器件。如下图所示,其中黄色框即画出的区域
3. 将步骤1图中左侧的目标模块拖拽到步骤2所画的方框中,即完成了对于这以模块的区域约束。表示这一模块所用到的器件都在该区域内。而后点击左侧窗口的Region标签页,可以对刚刚的区域重命名。最后点击保存按钮即完成了区域约束。