PCIe总线协议概述
时势造英雄
正所谓,时势造英雄、英雄造时势。
PCI总线在PC界已然一统江湖多年,应用已然广泛,PCI的总线已蔚然成风。
然,科技日益发展,需求不断膨胀,经过计算机技术10年的发展,包括摩尔定律的不断验证,PCI总线已渐渐感觉力不从心,成为PC 系统发展的瓶颈了,在显卡和图形处理方面尤为明显。更高速度的技术的出现势在必行。
这种时候的到来是必然的,早在PCI取代ISA的时候就应该想得到的。对科技生产力的阻碍已经掩盖了您的辉煌。新一代总线群雄割据
新一代的高速总线技术相继出现了。大多数是基于高速串行构架产生的传输标准。
包括HyperTransport, InfiniBand, RapidIO,ARM架构中的AMBA和StarFabric等等。
这些均有业界的不同企业支持,背后也都有大量的资金投入标准的研究开发,所以每一标准都声称自己与众不同,独占优势。
主要的差异在于可扩展性、灵活性与反应时间、单位成本的取舍平衡各不相同。①其中的一个例子是在传输包上增加一个复杂的头信息以支持复杂路由传输(PCI Express不支持这种方式)。
这样的信息增加降低了接口的有效带宽也使传输更复杂,但是相应创造了新的软件支持此功能。这种架构下需要软件追踪网络拓扑结构的变化以实现系统支持热插拔。InfiniBand和StarFabric标准即能实现这以功能。②另一个例子是缩小信息包以减少反应时间。
较小的信息包意味着包头占用了包的更大百分比,这样又降低了有效带宽。能实现此功能的标准是RapidIO和HyperTransport。③PCI Express取中庸之道,定位于设计成一种系统互连接口而非一种设备接口或路由网络协议。另外为了针对软件透明,它的设计目标限制了它作为协议,也在某种程度上增加了它的反应时间。
PCIe的出现
PCIe的出现就是基于这种群雄割据的形势诞生的。
Intel在2001年的IDF上提出了这个第三代的IO总线技术—PCI Express。当时称为“3GIO”当时PCIe一出现,各大厂商纷纷表示支持,就连Intel的竞争对手amd也表示要将PCIe加入到自己的芯片组中,其他芯片厂商(如ATI、Nvidia、VIA)也想将自己的技术加入到PCIe协议中去。可想而知,PCIe很明显成为取代PCI总线的新一代总线技术。PCIe总线标准比PCI总线的优势:
① PCIe总线使用两对数据线实现传输,TxRx。所有总线简化了很多,响应的设计成本会降低。
② 两个设备之间点对点串行互联,不同于PCI的共享一条总线资源,PCIe采用点对点技术,每个设备独享通道带宽,可以提高数据传输率。
③ 采用双通道传输,类似于全双工模式。
④ 支持热插拔,hotplug,这点让用户使用起来更方便。
⑤ 智能电源管理,支持低功耗。支持ACPI。
⑥ 软件对PCI架构的兼容,使用PCI那套软件方式即可配饰PCIe设备。
⑦ 测试方式简单化,通过简单连接即可测试设备。PCIe的拓扑结构
PCIe总线的架构可以形象化为:多组点对点相互连接的组件。
下图可以看出,大概有这些组成:Root Complex(RC),多个Endpoint(PCIe设备),Switch和PCIe-PCI bridge。
各个成员之间总线即为PCI Express。
PCIe总线协议的层次结构
有点类似于网络的七层协议了,不过PCIe架构简单一些:
①物理层(PhysicalLayer):使用两个单向的低电压差分信号实现数据传输。也承担8b/10b的数据解码。②数据链路层(DataLink Layer):对该层传输的TLPs进行组装和分拆。为上下两层服务。
③ 传输层(TransactionLayer):接受从软件方面送来的请求,并生成请求包传输到数据链路层。同时接受从数据链路层来的数据包,传递给软件。也就是对TLPs进行分装和组装。
PCIe在软件层上是和PCI兼容的,使用PCI的访问方式可以去配置PCIe总线。
PCIe device一般都有BusNO/DeviceNO/Function.通常DeviceNO为0.同时,另外提供了一种memory映射来访问PCIe device的方式—PCIe enhance configuration mechanism。
一共会占用256Mbyte的空间。这个后续再说。随着PCIe总线的应用和发展,已经陆续出来了几代版本,最主要还是在速率上有提升。
区别如下:
本文学习: https://blog.csdn.net/pankul/article/details/8642030
PCIe总线协议概述相关推荐
- 简单概述PCIe总线协议
初步认识pcie协议 PCI总线在PC界已然一统江湖多年,应用已然广泛,PCI的总线已蔚然成风.科技日益发展,需求不断膨胀,经过计算机技术10年的发展,包括摩尔定律的不断验证,PCI总线已渐渐感觉力不 ...
- FPGA高速接口设计之SpaceWire——总线协议概述
目录 一.SpaceWire总线协议概述 1.物理层 2.信号层 2.1 低电压差分信号(LVDS)技术 2.2 数据-滤波(DS)编码技术 3. 字符层 3.1 控制字符 3.2 数据字符 3.3 ...
- pcie总线协议入门基础知识
1. PCIe基础知识 PCI-Express是一种高速串行计算机扩展总线标准,它原来的名称为"3GIO",是由英特尔在2001年提出的,旨在替代旧的PCI,PCI-X和AGP总线 ...
- PCIe总线(协议简述)
PCIe总线(协议简述) 转自:https://www.cnblogs.com/YINBin/p/10946247.html PCIe总线(协议简述) - 那些城市那些人 - 博客园 1. PC ...
- 片上总线协议学习(1)——SiFive的TileLink与ARM系列总线的概述与对比
link 片上总线协议学习(1)--SiFive的TileLink与ARM系列总线的概述与对比 finally 27 人赞同了该文章 一.背景介绍 随着超大规模集成电路的迅速发展,半导体工业进入深亚微 ...
- PCIE学习笔记(二)PCIe总线的拓扑结构,协议层,数据传输流程
目录 PCIe总线的拓扑结构 PCI Express协议分层 物理层(Physical Layer) 数据链路层(Link Layer) 处理层(Transaction Layer) 软件层(Soft ...
- FPGA实战操作(2) -- PCIe总线(协议简述)
目录 1. PCIe基础知识 2. 事务层协议 2.1 数据包结构 2.2 帧头含义详述 3. 报文举例 3.1 寄存器读报文 3.2 完成报文 4. 机制简述 4.1 Non-Posted和Post ...
- AHCI协议、NVME协议、SATA总线、PCIe总线、SATA接口、PCIe接口、M.2接口
内容来自 硬件茶谈 硬盘的SATA M.2 NGFF NVME是什么意思,详解硬盘的总线协议与接口 侵删. 一.协议 AHCI和NVME协议民用很多,而SCSI协议大多用在服务器上. 二.总线 总 ...
- pci总线协议学习笔记——PCI总线基本概念
1.pci总线概述 (1)PCI,外设组件互连标准(Peripheral Component Interconnection),是一种由英特尔(Intel)公司1991年推出的用于定义局部总线的标准; ...
- PCIE总线硬件设计篇
PCIe总线概述 随着现代处理器技术的发展,在互连领域中,使用高速差分总线替代并行总线是大势所趋.与单端并行信号相比,高速差分信号可以使用更高的时钟频率,从而使用更少的信号线,完成之前需要许多单端并行 ...
最新文章
- 开始使用linux的core文件
- 回收mysql表碎片_MySQL表碎片整理
- java输入数量扑克牌排序_Java扑克游戏(多人多牌数比较游戏)的实现
- 移动硬盘上划分linux分区,Linux下磁盘分区和移动硬盘的挂载方法有哪些?
- vscode - 添加背景图片
- Cactoos中的面向对象的声明式输入/输出
- linux网络编程(三)select、poll和epoll
- 0909 对编译原理的想法
- Running pip as root will break packages and permissions. You should install packages reliably by usi
- WPS EXCEL 处理字符串转换为日期格式
- html页面右下角添加js广告,javascript实现右下角广告框效果
- 服务器ssd硬盘格式化,ssd固态硬盘格式化教程
- 免苹果开发者账号申请iOS上架及证书打包ipa测试(2022最新详解)
- solidwork 侵权 证据_企业常见版权侵权问题咨询总结
- LabWindows界面的程序控制
- Python读取Word文档内容
- java转义字符的print输出
- 豌豆淘谈护肤:豌豆淘讲解肤质分类,不了解肤质谈何护肤?
- jQuery笔记(锋利的jQuery)
- 职业规划测试软件,生涯规划工具