Altera FPGA NIOS使用Triple-Speed Ethernet三速以太网IP核驱动RTL8201CP百兆网口,并使用lwip2.1.2协议栈建立http服务器,支持IPv6
Quartus II 13.0工程下载地址:https://pan.baidu.com/s/17CQIZfkZJD9BzDyH6gTRLQ(提取码:3a6o,内含三速以太网license.dat)
程序功能展示:
1. ping通开发板的NetBIOS设备名,IPv4地址和IPv6地址
2. 访问开发板上的http服务器(设备名方式、IPv6方式)
3. 在路由器管理页面看到开发板的信息
4. PHY芯片自动协商网口速率和双工模式,程序带网口热插拔检测
5. DHCP获取IPv4地址,SLAAC获取IPv6地址
Qsys连线:
三速以太网IP核负责收发PHY芯片的数据包,通过SGDMA将数据包内容传输给C语言处理。NIOS II核负责运行C语言程序,其中包括了lwip2.1.2协议栈。Interval Timer负责提供毫秒计数器,供lwip的sys_now函数使用。
NIOS从onchip memory中启动(也就是reset和exception vector位于onchip memory),但程序运行在SDRAM中,SGDMA的描述符和缓冲区全部位于SDRAM中。
三速以太网IP核配置的是10/100Mb Small MAC模式,选择MII接口,使能了MDIO接口和半双工模式的支持。
https://fpga.cn/forum.php?mod=viewthread&tid=28512&highlight=lwip