问题描述
OPB2PCI桥数据表说明如下:
“IPIF / V3桥接器使用LogiCORE PCI64 v3.0 Core,需要ucf文件才能满足PCI规范.ucf文件可从LogiCORE Lounge获得,可以为用户选择的器件生成。这个LogiCORE PCI64 v3。 0核心特定的ucf文件必须由用户包含在顶级ucf文件中….“
如何生成这些约束并将其正确添加到系统UCF文件中?
解决/修复方法
使用OPB2PCI桥中包含的LogiCORE PCI64内核时,必须将约束添加到系统UCF文件中,以确保PCI内核能够正常运行。
可从PCI Lounge( http://www.xilinx.com/pci)获得的UCF生成器将生成适用于每个支持的器件和包组合的示例约束。
UCF生成器将提供各种约束,包括引脚约束,放置约束和时序约束。
示例UCF文件中的引脚约束应与OPB2PCI桥的相应输入和输出相关,然后应在系统UCF文件中相应地约束OPB2PCI桥外部I / O.
大多数时序约束(例如,周期约束,时序组定义,偏移,偏移等)对于应用于系统UCF文件是相对简单的。
如果示例UCF文件中的全局时钟缓冲区受到约束,则用户必须根据设计的时钟方案来考虑和约束这些缓冲区。
许多约束将以下列格式提供:
PCI_CORE / XYZ / XYZ / …
假设OPB2PCI Core在MHS文件中被命名为“opb_pci_0”,则应复制这些约束并将其添加到系统UCF文件中,如下所示:
opb_pci_0 / opb_pci_0 / PCI_CORE / XYZ / XYZ / …
例如:
NET“PCI_CORE / CBE_IO <2>”IOBDELAY = BOTH;
INST“PCI_CORE / PCI_LC / PAR / OFD”IOB = TRUE;
INST“PCI_CORE / PCI_LC / E / LOWER / T0”LOC =“TBUF_X66Y27”;
INST“PCI_CORE / PCI_LC / MASTER / REQ / REQ1”LOC =“SLICE_X66Y46”;
INST“PCI_CORE / XPCI_ADQ0”TNM = FFS:PCI_FFS_ICE;
INST“PCI_CORE”TNM = FFS:PCIM_FFS;
会成为:
NET“opb_pci_0 / opb_pci_0 / PCI_CORE / CBE_IO <2>”IOBDELAY = BOTH;
INST“opb_pci_0 / opb_pci_0 / PCI_CORE / PCI_LC / PAR / OFD”IOB = TRUE;
INST“opb_pci_0 / opb_pci_0 / PCI_CORE / PCI_LC / E / LOWER / T0”LOC =“TBUF_X66Y27”;
INST“opb_pci_0 / opb_pci_0 / PCI_CORE / PCI_LC / MASTER / REQ / REQ1”LOC =“SLICE_X66Y46”;
INST“opb_pci_0 / opb_pci_0 / PCI_CORE / XPCI_ADQ0”TNM = FFS:PCI_FFS_ICE;
INST“opb_pci_0 / opb_pci_0 / PCI_CORE”TNM = FFS:PCIM_FFS;
没有回复内容