汕头建设企业网站,网页设计心得体会5000字,下列什么不是用于制作网页的软件,wordpress 301 插件一、PCIe简介 PCI Express (peripheral component interconnect express) 简称PCIe#xff0c;是一种高速、串行、全双工、计算机扩展总线标准#xff0c;采用高速差分总线#xff0c;并采用端到端的连接方式#xff0c;因此在每一条PCIe链路中两端只能各连接一个设备。相对…一、PCIe简介 PCI Express (peripheral component interconnect express) 简称PCIe是一种高速、串行、全双工、计算机扩展总线标准采用高速差分总线并采用端到端的连接方式因此在每一条PCIe链路中两端只能各连接一个设备。相对于PCI引入了一些新特性如流量控制机制、服务质量管理(QoS)、热插拔支持、数据完整性和新型错误处理机制等。 PCIe 总线在实际工程实践中有着良好的应用主要应用在光纤、PCIe 数据采集卡、FPGA 加速卡、存储子系统等所有需要和主机进行高速数据交互的场所。
二、PCIe拓扑结构 PCIe拓扑结构是一个树结构层次结构的顶层是一个CPU一般包含一根组件RCRoot Complex交换器switch终端设备EPendpoint等类型的PCIE设备组成。 2.1 Root Complex Root Complex简称RCCPU和PCle总线之间的接口代表CPU与系统的其余部分进行通信可以理解为系统CPU和PCle拓扑之间的接口主要功能是完成存储器域到PCIe总线域的地址转换RC把来自CPU的request转化成PCIe的4种不同的requests(configuration Memory I/O Message并发送给接在它下面的设备。
2.2 PCIe-PCI Bridge PCIe-PCI Bridge提供了与其他总线(如PCI、PCI- x或另一个PCle总线)的接口它允许旧的PCI或PCIX卡通过桥接入系统中。
2.3 Switch PCIe总线采用端到端的连接方式,因此在每一条PCIe链路中两端只能各连接一个设备 如果需要挂载更多的PCIe设备那就需要用到Switch转接器。 Switch内部可以视为多个虚拟的PCI到PCI的桥实现扩展功能允许更多的设备连接到一个PCle端口。该组件会根据事务类型将数据送到不同的通道对数据包没有处理的功能只有转发功能。在软件层面可以看到switch的上行口upstream port 靠近RC的那一侧) 和下行口(downstream port)。一般而言一个switch 只有一个upstream port 可以有多个downstream port。 2.4 Endpoint Endpoint只能接受来自上级拓扑的数据包或者向上级拓扑发送数据包。例如声卡、网卡还有应用到PCIE的些功能设备均是端点。 Endpoint可分为Lagacy PCIe Endpoint和Native PCIe EndpointLagacy PCIe Endpoint是指那些原本准备设计为PCI-X总线接口的设备但是却被改为PCIe接口的设备。Native PCIe Endpoint则是标准的PCIe设备。其中Lagacy PCIe Endpoint可以使用一些在Native PCIe Endpoint禁止使用的操作如IO Space和Locked Request等。Native PCIe Endpoint则全部通过Memory Map来进行操作因此Native PCIe Endpoint也被称为Memory Mapped DevicesMMIO Devices 三、PCIe分层结构 PCIe总线架构是一种分层协议架构分为事务层(Transaction Layer)、数据链路层(Data Link Layer) 和物理层(Physical Layer)。这些层中的每一层都分为两部分一部分处理出站 (要发送的) 信息另一部分处理入站(接收的) 信息。 在PCIe结构中使用数据包在设备之间传递信息数据包在事务层和数据链路层中形成以将信息从发送设备传送到接收设备。 3.1 事务层 PCIe总线使用的数据报文首先在事务层中形成这个数据报文也被称之为事务层数据报文即TLP(Transaction Laver Packet)事务层的主要责任是事务层包TLP的组装和拆卸。事务层接收来自PCIe设备核心层的数据并将其封装为TLP。TLP用于传达事务例如读取和写入以及确定事件的类型。事务层还可以从数据链路层中接收数据报文然后转发至PCIe设备的核心层。
3.2 数据链路层 数据链路层的主要职责包括链路管理和数据完整性包括错误检测和错误纠正。数据链路层的发送方接受事务层组装的TLP检查接收到的TLP的完整性。在检测到TLP错误时数据链路层负责请求重发TLP直到正确接收信息或确定链路失败为止。数据链路层还生成并使用用于链路管理功能的数据包称为数据链路层数据包(Data Link Layer PacketDLLP)DLLP产生于数据链路层终止于数据链路层主要实现的功能有流量控制、电源管理、应答机制和虚拟通道。 TLP在经过数据链路层时被加上Sequence Number前缀和CRC后缀然后发向物理层。
3.3 物理层 物理层负责将从数据链路层接收的信息转换为适当的序列化格式并以与链路另一端的设备兼容的频率和通道宽度在PCI Express链路上传输该信息。PCIe总线的物理层定义了 LTSSM(Link Training and Status State Machine)状态机PCIe链路使用该状态机管理链路状态并进行链路训练、链路恢复和电源管理。 PCIe 总线使用端到端的连接方式在一条PCIe链路的两端只能各连接一个设备这两个设备互为数据发送端和数据接收端。由于 PCIe 是支持全双工通信的所以发送端和接收端中都含有TX(发送逻辑)和RX(按收逻辑)。在PCIe总线的物理链路的一个数据通路(Lane)中有两组差分信号共4根信号线组成。其中发送端的TX与接收端的RX使用一组差分信号连接该链路也被称为发送端的发送链路也是接收端的接收链路而发送端的RX与接收端的TX使用另一组差分信号连接该链路也被称为发送端的接收链路也是接收端的发送链路。 一个PCIe链路可以由多个Lane组成。目前PCIe链路可以支持1、2、4、8、12、16和32个Lane即xl、x2、x4、x8、x12、x16和x32宽度的PCIe链路。每一个Lane上使用的总线频率与PCIe总线使用的版本相关。