问题描述
Spartan-3系列DDR / DDR2 SDRAM MIG设计包括物理层内的抽头延迟电路;有关详细信息,请参阅( Xilinx XAPP454 ):“用于Spartan-3系列FPGA的DDR2 SDRAM接口”: http : //www.xilinx.com/support/documentation/application_notes/xapp454.pdf
适当的抽头延迟实现要求将电路逻辑放在一列中。为了强制实现工具始终将电路放在一列中,MIG v2.2设置了XIL_PAR_ALIGN_USER_RPMs环境变量。这是在位于生成的MIG输出的“par”目录中的ise_flow.bat脚本文件中设置的。 注意: MIG v2.3设置RLOC_ORIGIN约束而不是使用XIL_PAR_ALIGN_USER_RPMS环境变量。
解决/修复方法
如果未使用XIL_PAR_ALIGN_USER_RPMs环境变量,则必须创建RLOC_ORIGIN约束。此约束的值取决于MIG GUI中设置的system_clock存储区选择。 MIG允许system_clocks放置在顶部或底部库中。
顶级Bank选择
MIG输出UCF在cal_ctl上包含AREA_GROUP约束。此约束的RANGE中的第一个值是添加的RLOC_ORIGIN约束中的值。以下是MIG输出UCF的示例AREA_GROUP: Bottom Bank Selection
MIG输出UCF在cal_ctl上包含AREA_GROUP约束。要计算RLOC_ORIGIN约束,请取AREA_GROUP RANGE中的第一个值,并将10添加到X坐标。以下是来自MIG输出UCF的示例AREA_GROUP: 验证抽头延迟电路布局要验证tap_dly电路的放置,请按照下列步骤操作:
2.从位于左上角的列表窗口中选择“布线网络”。这显示了设计的所有布线网名。
3.在“名称过滤器”窗口中输入“* tap_dly * / tap *”以选择tap_dly链。
4.选择显示的所有网络,然后单击“名称过滤器”窗口右侧的“应用”按钮。
5.放大阵列窗口中突出显示所选路径的区域。
如果适当约束,逻辑将位于四个连续CLB中的单个列中。这表明RLOC_ORIGIN是正确的。
以下屏幕截图显示了tap_dly电路正确放置的示例:
注意:上面显示的层次结构和命名约定是指MIG生成的设计。应考虑设计层次结构和命名约定的任何更改。
没有回复内容