10GUDP协议栈 MAC层设计-(1)10G Ethernet PCS/PMA

本文介绍了Xilinx提供的10GEthernetPCS/PMAIP核在MAC层和PHY层实现中的应用,重点讲解了XGMII接口的64bit和32bit配置,以及它们在FPGA内部和外部PHY连接中的不同应用场景。
摘要由CSDN通过智能技术生成

一、引言

对于10G以太网MAC层的实现,Xilinx提供了 3种IP核,分别是 10G Ethernet MAC、10G Ethernet PCS/PMA、10G Ethernet Subsystem。

  • 10G Ethernet MAC只包含MAC层,外部需要提供一个PHY芯片进行数据对齐,10G Ethernet MAC与PHY之间的接口为XGMII。
  • 10G Ethernet PCS/PMA只包含PHY层,需要用户实现MAC层的功能,两者之间的接口同样也为XGMII
  • 10G Ethernet Subsystem包含完整的MAC层和PHY层,用户只需要将数据送入IP核即可。只不过这个IP核是收费的。

本篇简要介绍10G Ethernet PCS/PMA IP核的使用,以及XGMII接口的主要时序。

二、10G Ethernet PCS/PMA IP核

(1)选择XGMII的位宽为64bit,DRP的时钟为100M.

(2)将共享逻辑饱汉子例子工程中

 三、XGMII接口时序

参考:PG068

64bitXGMII接口(单侧:发送侧或者接收侧)

7系列需要提供156025MHz的时钟

64bit数据位宽的XGMII接口包含Data Bus、Control Bus,其中控制字符包含4种,分别是空闲字符(Idle)、起始字符(Start)、结束字符(Terminate)、错误字符(Error)。具体数值如下

起始字符(Start)的位置共有两种方式,一种是在数据总线的第4个字节(小端模式),一种是在数据总线的最后一个字节(小端模式)。这两种方式的选定主要是和64b/66b编码有关,具体可以去了解一下64b\66b编码。

起始字符在第4个字节: 

起始字符在第一个字节:

32bit XGMII接口 (单侧:发送测或者接收侧)

7系列需要提供312.5MHz的时钟

对于32bit 的XGMII接口,起始字符的位置只有一种,就是在最后一个字节(小端模式)。

64bitXGMII接口与32bitXGMII接口应用场景

64bit XGMII接口一般用于FPGA逻辑内部,也就是使用FPGA GT资源实现PHY层,PHY和MAC层都在FPGA内部实现。(主要原因接收侧+发送侧的信号数量达到了146,如果采用外部PHY芯片,即便转换成XAUI接口,走线还是太多了)

32bit XGMII接口可以用于外部连接PHY芯片,不过需要转换为XAUI接口,XAUI接口就是对XGMII按照lane进行串化,以减少PCB走线的数量,减小信号衰减和信号间的串扰。

  • [7:0]     -> 1 Lane
  • [15:8]   -> 2 Lane
  • [23:16] -> 3 Lane
  • [31:24] -> 4 Lane

总结:

引用:https://grouper.ieee.org/groups/802/3/ae/public/blue_book.pdf 

  • 21
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值