ZYNQ初体验千兆以太网的那些事儿(ps端)

常年混迹在单片机领域的小白,由于某些原因,要在zynq的soc部分做些千兆以太网的小工作,于是就苦苦的追寻着资料。
使用的这块测试版是zynq的7000,fpga+双核A9核。以太网部分涉及了很多知识点,也只能稍微记录一下自己了解的知识,还望高手多多指点。

前言:**
为了避免浪费大家的时间,毕竟下面的篇幅不短,我先说一下文章适应对象:
单片初次接触FPGA 的PS端同行
常年处理FPGA的PL端,刚接触PS端的同行
## 这边涉及一些基础的概念
从单片机刚接触FPGA+ARM,我觉得会有一个概念的模糊:哪一部分是PL端要做的事,哪一部分是PS端要做的事,PL和PS端是如何和调工作的。(关于这一块,有一个手册很有用:“米联《ZYNQ SOC修炼秘籍》”)
就千兆以太网而言,zynq提供了2种千兆以太网的模式的:
第一种,是ps端的以太网(也是我现在使用的方式),他是通过MIO来控制PHY,实现千兆以太网的。
第二种,是PL端的以太网,通过EMIO从PL端接出,连接到PHY。
ZYNQ初体验千兆以太网的那些事儿(ps端)_第1张图片
开发板使用内嵌的Gige 以太网控制器可以达到900Mbps的速度
zynq7000是使用A9硬核
关于硬核和软核的区别:
ZYNQ初体验千兆以太网的那些事儿(ps端)_第2张图片
手册上的描述,关于软核和硬核的(参考是米联《ZYNQ soc修炼手册》)
准备工作:
之前需要确认一些事。
第一:网线没需要确保网线是支持千兆的(网线上会有标注如果不知道,可以百度百兆和千兆网线的区别)。
第二:电脑网卡也需要是千兆的,可以打开设备管理器查看。
以上 确保硬件设备都是支持千兆网络的。
硬件环境:
zynq 7000 使用了rtl28111E的千兆phy 搭配A9自己的MAC。
因为直接使用开发板,所以千兆以太网的时钟是不需要去考虑的,但是如果自己调试的时候,建议还是查一下这个时钟是否是125MHZ
调试环境:
使用的软件是2017版本的Vivado。因为很多官方的文档都是更新到2014版本,所以很多工程在17版本已经不在了。但是不用担心,Github里面有最新的教程。
IP的配置
ZYNQ初体验千兆以太网的那些事儿(ps端)_第3张图片关于配置网上很多,无非就是注意MDIO需要勾选。

打开模板

ZYNQ初体验千兆以太网的那些事儿(ps端)_第4张图片在2017版本是没有带宽测试这个工程的,需要自己上github克隆最新的例程,移植到A9上。
此步骤会在后续第二章节详细说明。
LWIP的配置说明:

ZYNQ初体验千兆以太网的那些事儿(ps端)_第5张图片

ZYNQ初体验千兆以太网的那些事儿(ps端)_第6张图片

测试工具使用了jperf:最后测试到了网速是800-900Mbps左右
ZYNQ初体验千兆以太网的那些事儿(ps端)_第7张图片

你可能感兴趣的:(Zynq)