紫光同创PGL22G开发平台试用连载-(2)以太网测试工程一

yuancwei 提交于 周一, 08/31/2020
紫光同创PGL22G开发平台试用连载-(2)以太网测试工程一

PGL22G开发板中包含一个以太网接口,紫光同创FPGA通过RGMII接口与外部PHY芯片互连。而在千兆模式下,RGMII的运行速度为125MHz的双沿并行数据摘样(DDR)。

在本工程中计划测试以太网在千兆速率下,以满流量收发包时的丢包率问题。个人认为如果千兆以太网测试能够达来要求的话,该芯片应该可以满足大多数中低端的应用场景。

整个设计的系统结构如下图所示:其中①串口模块用作指示行交互控制工具,用于对内部模块进行控制和内部模块状态信息输出,从而方便调试;②以太网0包含一个完整的MAC以及报文产生、报文解析模块、报文统计功能,是本工程的主要测试对象;③以太网1包含一个完整的MAC,在本工程中没有实际用途,仅用于“消耗”FPGA资源,从而便于测试FPGA在资源“压力”下的性能。

2-1

由于千兆以太网在工作时需要125MHz的时钟,因此本设计全局系统时钟初步定为125MHz。由于本工程已有一些现成的模块加上ALINX提供的参考工程,设计/整理/仿真一步步走下来,很快就可以上PANGO软件来实现了。

第一次运行结果如下,出现了一众时序违规路径,125MHz的主工作时钟频率无法满足。

2-2

凤凰快3第一想来的是对系统工作时钟进行修改,将系统时钟频率降低为100MHz,仅RGMII接口模块部分功能使用125MHz工作频率。

第二次运行结果,时序通过(实际运行了多次,生成时钟约束、跨时钟域路径false等约束被逐步加入)。结果还算不错。

2-3

上板运行,通过串口输入来FPGA或FPGA内部信息打印输出均正常。

2-4

再次尝试125MHz的系统时钟。分析第一步中的时序falling结果,发觉是hold时序路径违规数比较多。其实在多次尝试后发觉出现hold时序违规的次数比较多,体会表明可以通过工程设置来尝试一下,在软件中逐个设置选项查看,果真有一项可以设置:

2-5

勾选Optimize Hold Timing选项并将最大优化值改大一些,再次运行。但是结果似乎不太明显。

2-6

为验证FPGA性能,暂时不考虑使用设计优化的方式去优化时序,连续查找通过设置工具的实现条件来尝试。这里主要尝试改变如下图中的2个条件。通过多次编译发觉,改变“Seed”的效果不太明显,但是将迭代次数“Placement Iteration”增加可以起来比较明显的效果(同时编译时间会变长)。

2-7

时序有好转但是还没有达来想要的时钟频率。

2-8

凤凰快3相关的文章

Digi-Key