10Base-T以太网解码

10Base-T以太网解码

转发: 10Base-T Ethernet decording


项目介绍

你好!

今天我将通过直接测量波形来分析10Base-T的链接过程以及数据是如何发送的。

测量使用的模块是W5100S-EVB-PICO,设置为10M half而不是Auto negotiagion,并使用TCP环回服务器示例。

请注意,10Base-t 使用正常链路脉冲 (NLP),与使用快速链路脉冲 (FLP) 的 100Base-t 不同。

蓝色波形是 W5100S-EVB-PICO 的 TX,黄色波形是 RX。

NLP 的波形周期为 100 ns,每 16 ms±8 ms 发送一次 NLP。

当数据包成为链路后发送时,必须在发送数据包之前生成前导码 (PRE) 波形和帧起始定界符 (SFD) 波形后发送。

PRE 波形是一个 7 字节(56 位)长的“10101010...”位模式,具有以下用途

1.时钟同步:前导码的主要目的是使接收器的时钟与发送器的时钟同步,这对于与网络上的其他设备进行准确的数据交换至关重要。在曼彻斯特编码方法中,每一位数据都有一个上升沿或下降沿,这些转变允许提取时钟信号并保持准确的时序。

2. 信号检测和稳定:前导码还允许网络设备检测信号的开始并为其做好准备。特别是如果设备很长一段时间没有接收到信号,前导码有助于确保接收电路被激活并准备好处理即将到来的信号。

3. 帧开始的识别:前导码后面的SFD通知接收器以太网帧中数据的实际开始。这阐明了接收器何时可以准确识别并开始处理帧的数据部分。

W5100S 上的 PRE 和 SFD
上面波形的开头是 PRE 和 SFD。

然而,要将上述波形读取为位,我们需要了解10Base-T传输数据所使用的Manchseter Encode方法。

Manchseter Encode方法是利用信号的上升沿(从0变为1)和下降沿(从1变为0)对数据位进行编码。曼彻斯特编码将时钟信号和数据信号结合起来,并将它们作为一个信号进行传输。这种方法的优点是可以从信号本身提取时钟信息。

10base-t的传输速率为10 Mbps,这意味着必须以100 ns的速率传输一位。

使用Manchseter Encode方法,我们可以分析上面测得的W5100S的PRE前导码。

您可以看到波形重复了 101010,如前所述。

PRE 和 SFD 的完整波形如下所示

您可以看到“10101011”的 SFD 波形,紧接着是一个 7 字节(56 位)长的 PRE 重复 10101010

PRE 和 SFD 波形后面是目标 MAC 和源 Mac 以太网类型、数据和帧校验序列 (FCS) 波形。

W5100S-EVB-PICO 的 Mac 为 00:08:DC:12:34:56,连接的客户端的 Mac 为 50:EB:F6:E6:5B:F8。

目标 MAC 读取“0000 1010 1101 0111 0110 1111 0110 0111 1101 1010 0001 1111”,将其翻转并转换为十六进制以获得目标 MAC。

也可以用同样的方法读取Source MAC。

对于以太网类型,您可以以相同的方式读取它来确定 IPv4。

之后测量的波形是数据波形,分析该波形将显示所使用的协议,Src IP、Dst IP、Src Port、Dst Port 等。

但下次我会分析数据波形。

波形末尾的 4 个字节(32 位)是帧校验序列 (FCS) 和 TP_IDL 波形测量。

FCS 使用 CRC-32 校验和算法检查数据错误。
TP_IDL 信号始终出现在 FCS 之后,以表示 FCS 结束,并保持 1 至少 250 ns。

在本文中,您学习了如何分析 W5100S 发送的数据波形,以了解链路在 10Base-T 上运行时会发生什么情况。

下次,我将分析本文中未涉及的数据波形,以检查协议和其他设置,并看看FCS使用的CRC-32校验和如何检测数据错误。

谢谢阅读!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值