本文以25G速率为例,对PG210进行简单介绍,为了能顺利读懂且快速掌握文章,首先需要对AXI总线知识和以太网知识进行相关了解,AXI总线可参见我先前发布的其它博客。
本次测试全部建立在单次发包测试的基础上进行,想要学习连续发包请见下个博客。
整个框图可以分为MAC地址部分、控制部分、serdes处理部分。关于各个信号信息在此不一一进行解释,该博客主要是为了让快速使用起来该IP。下面直接进入实战。
直接添加IP核,除了更改红圈的内容,其他均保持默认即可。IP核生成后,邮件选择IP选项中的Open Example Design,打开Xilinx提供的示例。提供的示例中包含了tb文件,此时可以直接使用tb文件进行仿真。
**对于Ethernet IP核来说具有内环和外环两种方式,分别通过下面寄存器来进行控制。xxv_ethernet_0_axi4_lite_user_if 中axi_wr_data的31bit为低电平时是外回环,为高电平时是内回环。**默认情况处于内环模式,直接运行tb文件即可。想要进行外环的测试需要做以下改动。
xxv_ethernet_0_axi4_lite_user_if中axi_wr_data=32’h4000_0000时,此时表示外回环状态。
demo中tb文件顶层的接口设置如下:
上述配置表示在外回环状态下进行功能测试仿真,仿真得到的时序图如下所示:
在不到300us的时候得到结果,通过tcl控制台可以看到发射和接收的详细信息,如下图所示。
对于测试结果的依据通过查阅PG210用户手册可以得出,如下图。
根据completion_status的返回值可以查看当前IP核的工作状态。
切记,在进行仿真时需要在Vivado的设置中添加黄圈内的内容,否则仿真时,completion_status不会返回状态。