pcie 6.0 (二)基本结构和功能层介绍
⊙rc和ep ⊙layer
0****1
**###
pcie 的拓扑结构**
首先为大家说明一下,在电路中一条链路表示两个组件之间的dual-simplex通信通道。 基本的 pci express 链路由两个低电压、差分驱动的信号对组成:一个发送对和一个接收对。同时在pcie中术语 gt/s 用于指代在lane上每秒传输的编码位数,这里lane指的就是一组差分信号对(一对用于传输,一对用于接收)。 为了扩展带宽,一个链路可以聚合多个通道,表示为xn 其中 n 可以是任何受支持的链路宽度。 以 2.5 gt/s 数据速率运行的 x8 链路代表每个方向上原始带宽的总带宽为 20 g bits。
pcie的结构由一组互连组件的点对点链路组成下图显示了该拓扑结构。此图说明了两个层次结构,一个层次结构由一个根联合体 (root complex,rc) 组成,另一个则是多个端点(endpoint,ep)和多个交换机(switch)组成,他们通过 pci express 链路互连。
rc
rc 表示将 cpu/内存子系统连接到 i/o 的 i/o 层次结构的根。如上图所示,一个rc 可以支持一个或多个pci express 端口。 每个接口定义一个单独的层次结构域。 每个层次结构域可以由单个端点或包含一个或多个 switch 组件和端点子层次结构组成与 switch 的规则不同,在层次结构域之间对等路由事务时,通常允许 rc 将数据包拆分为更小的数据包例如,将具有 256 字节有效负载的单个数据包拆分为 两个 128 字节有效负载的数据包。 生成的数据包受本规范中包含的正常数据包形成规则的约束(例如,max_payload_size, read completion boundary与 switch 的规则不同,在层次结构域之间对等路由事务时,通常允许 rc 将数据包拆分为更小的数据包(除了下面提到的),例如,将具有 256 字节有效负载的单个数据包拆分为 两个 128 字节有效负载的数据包。 生成的数据包受本规范中包含的正常数据包形成规则的约束(例如,max_payload_size、read completion boundary
(rcb)等)。
ep
endpoint指的是一种功能,它可以代表自己或代表不同的非 pci express 设备(pci 设备或主机 cpu 除外)作为 pci express 事务的请求者或完成者,例如 pci express 连接图形控制器或 pci express-usb 主机控制器。 端点分为传统、pci express 或根复合体集成端点 (rciep)
switch
switch的概念是在pci-e时代引入的,其相对于桥最大的一个本质区别就是同一个bus内部的多个角色之间采用的是switch交换而不是bus。pci-x时代真的是使用共享bus传递数据,这就意味着仲裁,意味着低效率。然而,pci-e保留了pci-x体系的基本概念,比如依然沿用“bus”这个词,以及“桥/bridge”这个词,但是这两个角色都成为了虚拟角色。一个switch相当于一个虚拟桥+虚拟bus的集合体,每个虚拟桥(vb)之下只能连接一个端点设备(也就是最终设备/卡,end point/ep)或者级联另外一个switch,而不能连接到一个bus,因为物理bus已经没了。这种fanout形式依然必须遵循树形结构,因为树形结构最简单,没有环路,不需要考虑复杂路由。
0****2
**## pcie 的分层结构
**
pci express 使用数据包在组件之间传递信息。 数据包在事务和数据链路层中形成,以将信息从传输组件传送到接收组件。 当传输的数据包流经其他层时,它们会使用处理这些层上的数据包所需的附加信息进行扩展。 在接收端发生相反的过程,数据包从它们的物理层表示转换为数据链路层表示,最后(对于事务层数据包)转换为接收设备的事务层可以处理的形式。下图表示一个传输的报文在不同层携带的信息。
transaction layer
pcie架构的上层是事务层。 事务层的主要职责是组装和拆卸 tlp(transaction layer packet)。 tlp 用于通信事务,例如读取和写入,以及某些类型的事件。 事务层还负责管理 tlp 的基于信用的流量控制。 每个需要响应数据包的请求数据包都被实现为拆分事务。 每个数据包都有一个唯一的标识符,使响应数据包能够被定向到正确的发起者。 数据包格式支持不同形式的寻址,具体取决于事务类型(内存、i/o、配置和消息)。 数据包还可能具有诸如无监听、宽松排序和基于 id 排序 (ido) 等属性。
transaction layer 支持四种地址空间:它包括三种 pci 地址空间(内存、i/o 和配置)并增加了消息空间。 此规范使用消息空间来支持所有先前的边带信号,例如中断、电源管理请求等,作为带内消息事务。 可以将 pci express 消息报文视为“虚拟线路”,因为它们的作用是消除平台实现中当前使用的大量边带信号。
data link layer
pcie中的中间层,即数据链路层,充当事务层和物理层之间的中间阶段。 数据链路层的主要职责包括链路管理和数据完整性,包括错误检测和错误纠正。
数据链路层的传输端接受事务层组装的tlp,计算并应用数据保护码和tlp序列号,并将它们提交给物理层以跨链路传输。接收数据链路层负责检查接收到的完整性 tlp 并将它们提交给事务层进行进一步处理。 在检测到 tlp 错误时,该层负责请求重传 tlp,直到信息被正确接收,或者链路被确定失败。
数据链路层还生成和使用用于链路管理功能的数据包。 为了将这些数据包与事务层 (tlp) 使用的数据包区分开来,在指代在数据链路层生成和使用的数据包时,将使用数据链路层数据包 (dllp)。
physical layer
物理层包括用于接口操作的所有电路,包括驱动器和输入缓冲器、并行到串行和串行到并行的转换、pll(s) 和阻抗匹配电路。 它还包括与接口初始化和维护相关的逻辑功能。 物理层以特定于实现的格式与数据链路层交换信息。 该层负责将从数据链路层接收到的信息转换为适当的序列化格式,并以与连接到链路另一端的组件兼容的频率和宽度通过 pci express 链路传输它。
pci express 架构具有“挂钩”,可通过速度升级和高级编码技术支持未来的性能增强,通俗点来说即pcie 6.0架构完全兼容pcie5.0 及以下版本。
随着5G时代的到来 机器人发展的过程中也会带来很多不确定性
VCO压控振荡器产品介绍
18英寸大喇叭音箱,SPEAKER
金属锂电池是什么,锂离子电池又是什么
轻奢平价神器!xisem西圣Ares蓝牙耳机重洗耳机市场!
PCIe 6.0入门基本结构和功能层介绍
双十一哪款蓝牙耳机最值得买?音质好降噪强蓝牙耳机推荐
家庭安防的监控格局
人工智能是从什么时候开始渗入我们的生活
多款Teledyne传感器在“毅力号”火星探测器中发挥作用
热导式气体传感器的性能特点详解
智能化技术改变农业生产方式,智慧农业正在成为趋势!
详解Linux:FOSS(自由和开源软件)是什么?
MS5803-05BA压力传感器测量城市水深
iphone新机后置或采用三颗摄像头,且飞行测距将成为主要感测技术
迈来芯线控制动技术应用案例
小米9价格公布_首发骁龙855定价2999元起
大数据热情逐渐消退 “资本寒冬”已悄然来袭
一加5什么时候上市?一加5真机图曝光:前后双摄+高通835+8G运存,又一部国产旗舰机登场
变压器空载或轻载运行时用不用进行无功补偿?