1、 实验简介
本次实验使用XC7Z015 芯片,拥有一个高速BANK。
实验目的:使用AURORA 8B 10B分别使用两个LAN传输不同的数据。
出现问题:生成bit报错。
2、 GTP时钟简介
XILIN ZYNQ 系列FPGA根据不同的器件类型,集成了GTP、GTX、GTH以及GTZ四种串行高速收发器,四种收发器主要区别是支持的线速率不同。
不同FPGA拥有0到多个高速BANK,每个高速BANK拥有两对差分时钟IO作为参考时钟、四对串行高速收发器。四个串行高速收发器和一个COMMOM(QPLL)组成一个Quad,每一个串行高速收发器称为一个Channel。
以7系列的GTX来说,每一个Quad有两个外部参考时钟,因此对于每一个Quad来说,可以选择两个不同的参考时钟,每一个CHANNEL的接收端和发送端都可以独立选择参考时钟,其中Quad的时钟结构如图1所示:
由图1所示,每个Quad拥有一个QPLL和四个CPLL,对于一个GTX Channel来说,可以独立选择参考时钟,可以选择QPLL,也可以选择CPLL,QPLL和CPLL的区别在于两者支持的线速率不同,QPLL支持的线速率高于CPLL。
QPLL和CPLL的区别,在于两者支持的线速率不同,对于CPLL来说,支持的线速率位1.6GHz到3.3GHZ之间,而对于QPLL来说,GTX支持的线速率分两档,Lower Baud支持5.93GHz~8.0GHz,Upper Baud支持9.8GHz12.5GHz,对于GTH则不分档位,支持的线速率为8.0GHz13.1GHz。
3、 AURORA 8B 10B配置
3.1、IP配置、线速率:6.25Gbps
Shared logic:include shared logic in example design;
生成IP后,右击IP,选择Open IP Example Design,新建一个工程,将两个IP的例子工程添加到新工程下,将两个工程例化到top下。
3.2、错误分析:
编译完成后,综合生成bit文件报错。
Error : 0-6401 Place Check : This design requires moreGTPE2 COMMON cells than are available in the target device. Thisdesign requires 2 of such cell types but only 1 compatible site isavailable in he target device. Please analyze your synthesis resultsand constraints to ensure the design is apped to Xilinx primitives asexpected. If so, please consider targeting a larger device.
翻译过来就是:[放置30-6401放置检查:此设计需要比目标设备中可用的更多的GTPE2 COMMON单元。这种设计需要2个这样的小区类型,但在目标设备中只有1个兼容站点可用。请分析您的合成结果和约束,以确保设计按预期映射到赛灵思原语。如果是这样,请考虑使用更大的设备。
原因:本次实验线速率6.25Gbps,显然使用CPLL无法满足,只能使用QPLL生成参考时钟。而两个例子工程都例化了aurora_8b10b_1_gt_common_wrapper文件,此文件内包含GTPE2_COMMON原语,即调用QPLL输出时钟。
而XC7Z015芯片只有一个高速BANK,即只有一个QPLL模块,所以在布线的时候资源不够用。
3.3、解决方案:
方案一:改为更为高端FPGA芯片,如XC7035,XC7Z100有多个高速BANK;
方案二:a_8b10b_0_support或者aurora_8b10b_1_support文件下的aurora_8b10b_0_gt_common_wrapper模块删掉一个,删掉的通道使用另一个通道生成的时钟。
模块一:
模块二:
修改后例化模块:(少例化一个gt_common模块)
再次编译,能够成功生成bit文件。
参考链接:http://blog.chinaaet.com/ladywn/p/5100018659#