10G/25G Ethernet Subsystem(一)(内回环)

使用软件:vivado2020.1、仿真用vivado自带的仿真

摘要: 在Xilinx官方文档中(PG210-25G-ethernet)找到自己要的信息,几乎没有去动IP核什么参数,主要是通过这个IP去完成内回环以及外回环的仿真以及上板调试(另一篇文章),通过实现这个去了解整个FPGA开发流程。

内回环:PMA回环

外回环:通过SFP光模块口回环

IP核参数只改了BASE-R以及Include AXI4-Lie

10G/25G Ethernet Subsystem(一)(内回环)_第1张图片

目录

1.从Xilinx文档中找到有用信息

2.顶层

3.仿真

 3.1 IP核仿真

 3.2内回环仿真

4.约束文件

5.生成比特流、时序        ​

6.总结


1.从Xilinx文档中找到有用信息

有些人一直仿真不出来,可能需要加上这一段话才行。

10G/25G Ethernet Subsystem(一)(内回环)_第2张图片

 

  10G/25G Ethernet Subsystem(一)(内回环)_第3张图片

        打开Ethernet ip核的example design之后,看一下官方给的IP核仿真(仿真之前记得按照文档提示来)。不难发现,通过几个信号就能够观察IP核在什么情况下才是正常使用的。那么在PG210-25G-ethernet中可以找到这些信号,User Interface是我们比较关注的地方还有就是txrx信号。

10G/25G Ethernet Subsystem(一)(内回环)_第4张图片

2.顶层

        要把example design直接用到工程里面去,需要做一点点改动。比如最终我要在xczu27dr-fsve1156-2-i这个芯片板子上跑通内回环和外回环,可以把官方的example design放到顶层里面去。顶层的信号只需要用到gt连接芯片端口的信号、gt时钟差分信号、clk差分信号以及SFP光模块信号。restsrt_tx_rx 和 send_continous_pkts直接给0,gt时钟给的是368.64MHz,dclk是100MHz(dclk这里用clk wizard IP核生成的),直接给复位,EXDES0这个模块就能够运行。那么用ILA在调试板上抓信号的时候,可以只用看看 restart_tx_rx_0、rx_gt_locked_led_0、rx_block_lock_led_0、completion_status、stat_reg_compare 这几个信号就可以了

10G/25G Ethernet Subsystem(一)(内回环)_第5张图片

10G/25G Ethernet Subsystem(一)(内回环)_第6张图片

3.仿真

 3.1 IP核仿真

        从example design仿真里面可以看到,50us前,两个lock已经locked住了;100多us的时候开始发包,200多us的时候结束,completion_status在完成后变成1。

10G/25G Ethernet Subsystem(一)(内回环)_第7张图片

10G/25G Ethernet Subsystem(一)(内回环)_第8张图片

 3.2内回环仿真

        内回环仿真与上面基本差不多,不过可以通过改变sys_reset或者restart_tx_rx信号(这个信号值可以在completion_status为1后进行改变),去多观察一下会有什么变化,这对理解IP核有帮助

4.约束文件

        约束文件注意格式,电平、端口、引脚注意一下,一般不会有什么问题,下图举例:

10G/25G Ethernet Subsystem(一)(内回环)_第9张图片

10G/25G Ethernet Subsystem(一)(内回环)_第10张图片

5.生成比特流、时序        10G/25G Ethernet Subsystem(一)(内回环)_第11张图片

        这一套完成下来,对FPGA开发流程了解了不少,也基本对Ethernet内外回环清楚一些了,生成比特流后发现时序很糟糕,感觉是因为ILA抓信号引起的,不过可以对时序进行优化,多加一些约束,但是这个时序问题好像不太会影响对内外回环的测试。

10G/25G Ethernet Subsystem(一)(内回环)_第12张图片

6.总结

我这个代码不能直接去用于仿真,因为我改动过,改成可以上板子调试的版本了。想要仿真直接去用Xilinx提供的example design,这个比较简单,可以直接生成,切记一定要加速(-d SIM_SPEED_UP)。

X​​​​​​ilinx文档搜索

Xilinx官方文档,PG210-25G-ethernet(英文版),c_pg210-25g-ethernet(中文版)

代码已经上传:1025G_Ethernet_Subsystem-1.7z-硬件开发文档类资源-CSDN下载

PMA回环

你可能感兴趣的:(IP核使用,fpga开发,硬件工程)