mdyfpga002 发表于 2023-5-11 09:50:02

千兆网模块

RTL8211千兆网模块使用手册明德扬科技教育有限公司



官网:www.mdy-edu.com淘宝:mdy-edu.taobao.comQQ群:97925396QQ咨询:158063679
一、 产品介绍1.1产品图片 https://gd4.alicdn.com/imgextra/i2/26485570/O1CN01KgbDNP1r16pX7Bl59_!!26485570.jpg_400x400.jpg






1.2芯片概述芯片型号:RLT8211




1.3功能引脚定义

千兆网模块通过该管脚与板子相连。

管脚名说明方向(本模块视觉)备注
D3V33.3V电压管脚I注意电压要求。通电前要再三确认电压
GND接地管脚I


E_RESET千兆网复位管脚。值为低电平时,复位有效。I


配置接口
E_MDIO配置接口中数据总线IO配置接口是通用标准接口,可百度查看相应时序。
E_MDC配置接口的时钟线I
发送方向接口(开发板发送数据给本模块,本模块再发给网络另一端)
E_TXER发送包文错误指示信号。表示该包文是错误的。不常用,建议置为0即可。I发送接口的时序,其实关键的是TXC、TXD、TXEN。这跟明德扬的规范信号一致的,TXC就是时钟,TXD就是数据,TXEN就是VLD信号。但以太网发送的数据有格式要求,必须是以太网格式的包文。详见下面描述。
E_TXD发送包文数据总线,GMII使用8位;RGMII使用其中的4位。I
E_TXC发送包文的时钟信号,非GMII/RGMII模式时使用。I
E_TXEN发送包文数据使能信号。表示传输给本模块的数据有效。I
E_GTXC发送包文的时钟信号。GMII/RGMII模式时,时钟必须是125MHz。I
接收方向接口(本模块从网络另一端接收到数据,然后发给开发板)
E_RXER接收包文错误指示信号,表示此包文有错误O接收接口的时序,关键的是RXC、RXD、RXDV。这跟明德扬的规范信号一致的,RXC就是时钟,RXD就是数据,RXDV就是VLD信号。接收到数据容易,但要识别出数据的内容,则需要按照以太网格式去解析。详见下面描述。
E_RXD接收的数据总线,GMII使用8位;RGMII使用其中的4位。O
E_RXDV接收包文数据使能信号。表示传输给开发板的数据有效O
E_RXC接收包文的时钟信号。GMII/RGMII模式时,时钟正常是是125MHz。注意,该时钟是本模块从网络中恢复出来的时钟,是由本模块发送开发板的。O
E_CRS不常用,可不理。O


E_COL不常用,可不理。O





二、 快速入门2.1参考资料和软件工具

资料或工具子类说明建议
wireshark

抓包软件,通过该软件可以抓取电脑发送出去或接收过来的包文。安装
小兵以太网测试软件

发包软件。通过该软件,可以在电脑发送一些常用格式包文给本模块安装
以太网基础知识OSI参考模型资料OSI参考模型资料,有助于理解通信中各个层次协议,是学习通信的基础。理解有多少个层次及每个层次的作用
Triple-Speed Ethernet MegaCore手册ALTERA MAC IP核的说明文档,此核能够实现网络中MAC这一层的协议。关键是看初始化流程。
网络层资料通信中网络层的资料,可以理解网络IP地址等概念理解IP地址的概念
UDP资料通信中UDP协议的资料理解UDP中各字段
ARP协议ARP协议的资料理解ARP的作用及流程
DHCP协议DHPC协议的资料理解DHCP的作用及流程
QUARTUS MAC IP核破解方法

QUARTUS如果要使用MAC IP核,需要破解,里面是破解的方法使用ALTERA的,记得要破解
RTL8211测试程序

RTL8211的测试工程,可以验证硬件是否正确,以及理解时序重点学习
RTL8211E(G)数据手册

RTL8211的官方数据手册遇到问题可以阅览
明德扬RTL8211千兆网模块原理图

明德扬RTL8211千兆网模块的原理图



2.2以太网包文格式
发送给本模式的包文,以及从本模块获取的格式,其一般格式如下表:

前导码(8B)目的MAC(6B)源MAC(6B)协议类型(2B)数据FCS(4B)

前导码:表示包文的开头,其内容是64’h5555_5555_5555_55d5。目的MAC:网络另一端的网卡物理地址。全1是广播包。源MAC:自己的网卡物理地址。协议类型:Ø         0x0800:IP数据报Ø 0x0806:ARP数据报Ø 0x88CC:LLDP链路层发现协议,不确定是否要用到数据:即要发送的数据。一般最少是48字节。FCS:校验码,根据协议计算出的校验码。
2.3发送数据时序
2.4接收数据时序

2.5RTL8211测试程序
程序层次结构

yitianNet_top






--------u_rtl8211_top






--------u_key_module




--------u_yitaiNET






--------rtl8211_config


--------u_yitai_control


--------u_yitaiNET_driver






--------u_my_pll1




yitianNet_top是整个程序的顶层,其包括两个功能:配置功能和数据处理功能。u_rtl8211_top主要实现配置功能,当按下按键后,先复位PHY,然后再对PHY进行配置。配置的内容和个数,用户可以在rtl8211_config中定义。其格式如下图所示。
每组中均定义了读写属性、地址和数据。写读属性,当值为“11”,表示对该地址先写进数据,然后再读出来;当值为“01”,表示仅读该地址;当值“10”时,表示仅写该地址;当值为“00”时,表示不处理。用户可以参照此方式来定义自己的寄存器。注意参数“REG_CNT”表示有多少个寄存器要操作,增加或减少寄存器时,要修改此值。u_yitaiNET_driver主要实现测试包文发送,以及从包文接收功能。测试包文发送的固定的包文,每隔一段时间发送。

三、 像普通接口一样使用千兆网
使用千兆网,既要了解底层时序,又要了解各种MAC、UDP、ARP等协议,要花费大量的精力才能使用上千兆网。但大部分用户其实是不相关心协议细节的,仅仅是希望快速使用上网络,并能传输大量数据。为此,明德扬提供了一个简单易用的IP核(另收费),该IP核实现了MAC、ARP、IP、UDP等常用协议,但用户完全不需要关心这些,只管收发数据就可以了,比使用串口还简单。
Ø 支付MAC/IP协议 Ø 支持UDP协议Ø 支付ARP协议,自动获取对端网卡的物理地址,用户无需要配置。Ø 支持包文长度配置,可根据用户需要设置每个发送包文的数据长度。长度越长,利用效率越高。Ø 根据用户需求支持ALTERA、XILINX和其他FPGA芯片,支持FPGA各芯片型号。Ø DHCP功能需定制。包含DHCP功能,则模块自动获取IP地址和对端的IP地址。真正实现即插即用。Ø 流控功能需要定制,默认不带流控。如果带流控功能,则支持发送侧响应流控;支持接收侧产生流控;支持不使能流控。


信号I/O


cfg_pack_sizeI配置每个包文的大小。不关心或不知道填什么时,建议填256。
cfg_des_ipI配置目的IP地址。查询对端网络的IP地址,再填写此项。
cfg_soc_ipI配置源IP地址。本端的IP地址,不关心或不知道填什么时,建议填C0A80009(192.168.0.9)。
arp_keyI按下此键,则发送ARP请求包文,获取对端的MAC地址。接上网络后,按下此键,获取对端网卡的物理地址。
cfg_soc_macI配置本地MAC地址。不关心或不知道填什么时,建议填010203040506。
tx_dataI发送的数据
tx_vldI发送数据有效指示信号
tx_rdyO发送准备好指示信号
rx_dataO接收的数据
rx_vldO接收数据有效指示信号
tx_byte_rateO实现统计发送速率
rx_byte_rateO实现统计接收速率


联系方式:小罗老师(18028595609)微信号:mdyfpga002(添加老师微信可领取资料,可购买:handshake)
页: [1]
查看完整版本: 千兆网模块