当前位置: 首页 > article >正文

硬件设计基础之闲聊千兆以太网

一、千兆以太网的介绍

常见的以太网有几种形式,10Mbps、100MHz、1000Mbps、10Gbps等,当然还有更高的,接触的少些,暂且不聊。

10Mbps、100Mbps,多见于单片机使用,比如STM32/GD32

1000Mbps、10Gbps,多见于FPGA使用,比如Altera的低端Cyclone系列、中端A系列、高端S系列;Xilinx的低端Spartan7系列、ZYNQ系列,中低端A7系列、中端K7系列、高端V系列。

当然CPU也会用到,常见笔记本使用的就是千兆以太网。

当然千兆以太网传输,也可以使用光口(不使用RJ45),目前技术也成熟,有专用的座子。

千兆以太网,顾名思义,就是传输的数据1000Mbps,每秒传输1000Mbit。

因为使用4组差分对传输,所以单组差分对的数据量=1000Mbit/4=250Mbit

二、千兆以太网的接口协议

        千兆以太网信号通过RJ45座子与外部设备连接;

        支持千兆以太网的协议有,RGMII协议、GMII协议、SGMII协议;

1)RGMII协议

RGMII协议,发送端,数据线有4根,时钟线有1根,接收端也是如此,具体使用引脚见下面的图片;

当向外发送数据,PHY芯片的输入连接到处理器,比如FPGA,输出端通过RJ45和外部设备连接;

如果传输1000Mbps,FPGA端,传输时钟在125MHz,在时钟的上升沿和下降沿均传输数据,传输数据量计算公式=125MHz*2边沿*4根线=1000Mbps。

        

2)GMII协议

GMII协议,发送端,数据线有8根,时钟线有1根,接收端也是如此,具体使用引脚见下面的图片;

当向外发送数据,PHY芯片的输入连接到处理器,比如FPGA,输出端通过RJ45和外部设备连接;

如果传输1000Mbps,FPGA端,传输时钟在250MHz,在时钟的上升沿和下降沿均传输数据,传输数据量计算公式=125MHz*8根线=1000Mbps。

       

3)SGMII协议

SGMII协议,发送端1个差分对,接收端1个差分对,时钟占用一个差分对,数据引脚可以接到FPGA的GPIO引脚(需要注意,同一个BANK,间隔放差分对,最好做Quartus软件仿真),也可以接到FPGA的高速BANK引脚,传输数据的速率1.25Gbps,具体使用引脚见下面的图片;

当向外发送数据,PHY芯片的输入连接到处理器,比如FPGA,输出端通过RJ45和外部设备连接;

如果传输1000Mbps,FPGA端,传输时钟在1.25Gbps,在时钟的上升沿和下降沿均传输数据,传输数据量计算公式=1.25Gbps*80%(8B/10B编码)=1000Mbps。

三、常用芯片介绍

支持千兆以太网的芯片,按照协议选型:

1)支持RGMII协议和GMII协议的芯片

RTL8211E-VB-CG、RTL8211E-G-VB-VL-CG、RTL8211F(D)(I)-CG88E1111、88E1512、DP83867IR、

2)支持RGMII协议的芯片

RTL8211F-CG、KSZ9031RNX、88E1518、

3)支持RGMII协议和SGMII协议的芯片

dp83867is、RTL8211FS-CG、88E1512、

4)支持RGMII协议和MII协议的芯片

88E1510

5)支持RGMII协议、GMII协议、PCIE的芯片

RTL8111C

6)支持QSGMII协议的芯片

88E1680

7)支持MII协议的芯片(十兆/百兆)

RTL8201CP、DM9000CEP


http://www.kler.cn/a/322888.html

相关文章:

  • 《C语言程序设计现代方法》note-5 数组
  • 31.3 XOR压缩和相关的prometheus源码解读
  • vue之axios根据某个接口创建实例,并设置headers和超时时间,捕捉异常
  • linux企业中常用NFS、ftp服务
  • 【机器学习】机器学习中用到的高等数学知识-1.线性代数 (Linear Algebra)
  • 基于Matlab的碎纸片的自动拼接复原技术
  • 设计模式-PIMPL 模式
  • 【Webpack】publicPath
  • STM32F407ZGT6配置can信号
  • 游戏服务器如何有效地实现不同游戏模式和规则?
  • git clone或repo init 时报错:fatal: 协议错误:错误的行长度 xxx
  • 如何保护自己电脑以及服务器的ip地址
  • MyBatis——Plus
  • Python/大数据/机器识别毕业设计选题题目推荐
  • 在Ubuntu中实现图形用户界面(GUI)切和命令行界面(CLI)的切换
  • 计算机毕业设计之:基于微信小程序的诗词智能学习系统(源码+文档+解答)
  • 一站式自闭症全托服务,让孩子全面发展
  • react组件入门
  • java中的四种引用
  • 【高分系列卫星简介——高分辨率多模综合成像卫星】
  • 无人机飞手入伍当兵技术优势分析
  • Android中使用RecyclerView制作横向轮播列表及索引点
  • 前端基础知识汇总(一)
  • 李宏毅机器学习2022-HW9--Explainable AI
  • 鸿蒙面试题库收集(一):ArkTSArkUI-基础理论
  • MySQL知识点复习 - 常用的日志类型