找网站公司做网站的陷阱,网站建设岗位任职资格,seo搜索引擎优化实训报告,wordpress编辑器哪个好用✨前言#xff1a;
#x1f31f;数据链路层的功能
数据链路层将从物理层中获得报文#xff0c; 并将其传递给事务层#xff1b; 同时接收事务层的报文#xff0c; 并将其转发到物理层; 核心的功能有以下三点 1.保证TLP在 PCIe 链路中的正确传递; 2.数据链路层使用了容错…✨前言
数据链路层的功能
数据链路层将从物理层中获得报文 并将其传递给事务层 同时接收事务层的报文 并将其转发到物理层; 核心的功能有以下三点 1.保证TLP在 PCIe 链路中的正确传递; 2.数据链路层使用了容错和重传机制保证数据传送的完整性与一致性 3.此外数据链路层还需要对PCIe 链路进行管理与监控。
什么是DLLP
DLLP全称是Data Link Layer Packet是在PCI Express (PCIe) 架构中数据链路层使用的一种数据包类型。在PCIe架构中通信分为几个层次其中数据链路层位于物理层之上负责提供可靠的点到点通信连接。本文将要介绍的DLLP指的正是这样的数据包其一般用于Ack/Nak机制、功耗管理、Flow Control流量控制和一些厂商自定义用途等。示意图如下 DLLP的格式是固定的一共有8个字节包括FramingSDP END。和TLP不一样的地方是DLLP并未携带任何路由信息原因很简单因为DLLP只在相邻的两个设备的数据链路层之间通信根本不需要路由。并且DLLP一般也不需要和事务层交换信息。
✨DLLP的主要功能和类型
DLLP主要用于链路管理和维护功能不是用户数据的传输。以下是一些DLLP的主要功能和类型 ACK/NACK这些DLLP用于确认收到的 TLPTransaction Layer Packet或者在检测到错误时反馈否定回应。ACK 和 NACK DLLP 对于维护链路的流控制和可靠性至关重要。 Flow Control Update这些包用于流控协议允许终端节点通告其缓冲区的可用空间确定发送方可以发送多少数据避免溢出接收方。 Power Management Event (PME)在设备需要改变电源状态或发起电源管理事件时使用 PME DLLP通知对方。 Link Management Messages用于链路初始化、重置等管理任务的消息传递。 Link Bandwidth Management Messages当链路的宽带发生变化时如由单通道变为双通道等这些 DLLP用于通知链路两端的设备。 Vendor Specific Messages这种 DLLP为硬件制造商提供了一种方法来发送其定义的特定信息。
✨DLLP与TLP两者在数据链路层的主要区别
TLPTransaction Layer Packet负责传输应用数据即最终用户的数据负载。这些数据包通常大于DLLP可能因数据传输需求而变化大小。 DLLPData Link Layer Packet其结构相对固定并且它被用于链接层的操作和维护而不是用户数据的载体。 在数据链路层一个重要的特性是错误检测和重传。DLLP通常包含序列号和校验和用于确保链路层通信的完整性。例如如果一个ACK DLLP丢失则发送端可能会重发前一个TLP直到收到正确的ACK为止。 这种方式为PCIe提供了高度的可靠性使其成为连接高速I/O设备如SSD、显卡、网络接口卡等的首选接口。
✨DLLP的一般格式如下图所示 ✨DLLP的类型与目标应用如下表所示 用于Ack/Nak的DLLP的格式如下 用于功耗管理Power Management的DLLP的格式如下 用于Flow Control的DLLP的格式如下 厂商自定义的DLLP的格式如下