APP下载

以太网IP核的FPGA验证

2020-08-24蔡玉辉

微处理机 2020年4期
关键词:子板寄存器时序

蔡玉辉

(中国电子科技集团公司第四十七研究所,沈阳110032)

1 引言

随着网络技术的高速发展,以太网已在通信、控制、传输领域得到了普遍的应用。目前对集成网络功能的SoC(System on a Chip)芯片的应用需求量也在快速增长。在实际的科研与应用中,FPGA验证被广为采用,因其可以快速定位SoC芯片的设计缺陷,同时兼能进行软件程序开发,进而缩短整个项目的开发周期[1-2]。在此,首先介绍基于FPGA的以太网验证平台的软硬件架构,然后详细阐述基于该平台的以太网IP核的验证工作过程。

2 以太网IP核验证平台系统架构

以太网基于TCP/IP协议[3],其参考模型如图1所示。其中数据链路层和物理层由硬件实现;应用层、传输层、IP层则由软件实现。数据链路层分为逻辑链路控制层LLC和媒体访问控制层MAC。此处需要验证的IP核为MAC层的功能。对MAC控制器的功能验证采用软硬件协调验证的方法[4]。该验证系统的硬件平台及软件平台架构简介如下:

图1 TCP/IP协议参考模型

硬件平台:该以太网硬件平台采用母板+子板的结构。母板采用Xilinx公司的Kintex-7 325T FPGA,最大容量是325万门。子板主要集成以太网的PHY芯片、JTAG调试接口、串口、LED、按键等功能。PHY芯片选用的是DAVICOM公司的DM9161芯片。子板与母板之间是通过接口FMC-HPC连接,连接结构框图如图2所示。

图2以太网FPGA验证平台结构框图

软件平台:该软件平台主要是基于轻量级的TCP/IP协议族——LWIP。LWIP的主要目的是减少存储器利用量和代码尺寸。LWIP更适合应用于小的、资源有限的嵌入式系统。该验证系统是基于LWIP协议开发的软件验证程序,测试代码使用嵌入式C语言[5-6]编写。

3 以太网IP核验证

系统采用硬件描述语言Verilog HDL实现逻辑功能[7],以Xilinx Vivado 2016.4为电路开发运行环境,以VCS为软件仿真环境完成系统的功能设计。网络通信的链路一端为Kintex-7 325T FPGA,另一端为PC机。PC端使用WireShark软件抓取链路上收发的以太网数据。

以太网IP核的功能验证按照以下步骤进行调试验证:

(1)寄存器验证

首先对MAC控制器所有寄存器进行复位值、读写寄存器的验证。

(2)MDIO接口控制

MDIO是MAC控制器和PHY之间的管理接口。该接口是通过时钟MDC和数据MDIO两根信号线来访问PHY寄存器。验证第一步首先是要保证该接口时序正确,通过该接口完成对子板上PHY芯片的控制。通过MDIO接口访问PHY芯片的总线接口时序如图3所示。

图3 MDIO接口时序

(3)数据链路建立

当完成PHY寄存器的初始化后,FPGA端与PC端进行自协商,确定通信模式及通信速率,由于设计的网卡是10M/100M以太网,因此自协商结果一般为100MHz、全双工的工作模式。

(4)RMII接口通信

精简独立介质接口RMII相比于独立介质接口MII,减少了以太网模块和外部PHY之间的连接引脚数。以太网的MAC与PHY通过RMII接口连接,如图4所示。编写不含网络协议的软件测试程序,其目的是测试MAC层收发帧的时序是否正确。RMII接口的以太网时钟信号频率为50MHz,数据帧通信的波形如图5所示。

图4 RMII接口

图5 RMII接口通信波形

(5)PING程序调试

在完成MAC帧收发调试后,基本可证明MAC IP核硬件平台功能正确,基于此,编写基于LWIP协议的PING程序,此程序基于ICMP(Internet Control Message Protocol,因特网控制报文协议),通过ICMP发送请求和回送应答来验证整个网络的连接性。

(6)UDP收发测试[8]

完成IP层测试后,可证明MAC控制器的功能及硬件板卡的设计基本正确。基于此,开发UDP的测试程序,完成传输层数据的收发测试。PC机使用周立功的TCP&UDP测试工具,其运行结果如图6所示。

图6 UDP测试结果界面

(7)典型应用协议调试

在完成以上所有测试工作后,编写基于Telnet、Http、FTP等协议的应用层的程序,最终完成典型的应用协议的测试。

4 结束语

在网络技术高速发展和物联网兴起的背景下,研究了以太网IP核基于FPGA的验证工作,基于该平台,完成了对以太网MAC控制器的功能验证,同时进行了软件程序开发,大大缩短了项目开发周期。

猜你喜欢

子板寄存器时序
顾及多种弛豫模型的GNSS坐标时序分析软件GTSA
基于Optistruct翼子板分析
汽车轮胎与翼子板视觉美观性分析
清明
基于GEE平台与Sentinel-NDVI时序数据江汉平原种植模式提取
你不能把整个春天都搬到冬天来
Lite寄存器模型的设计与实现
翼子板典型缺陷分析及改进方案
二进制翻译中动静结合的寄存器分配优化方法
移位寄存器及算术运算应用