PCIe扫盲——PCIe简介-FPGA CPLD资料源码分享社区-FPGA CPLD-ChipDebug

PCIe扫盲——PCIe简介

PCI-Express是继ISA和PCI总线之后的第三代I/O总线,即3GIO。 由Intel在2001年的IDF上提出,由PCI-SIG(PCI特殊兴趣组织)认证发布后才改名为“PCI-Express”。它的主要优势就是数据传输速率高,另外还有抗干扰能力强,传输距离远,功耗低等优点。

注:第一代总线一般指ISA、EISA、VESA和Micro Platforms。第二代总线一般指PCI、AGP和PCI-X。

此外,我们在示波器等测量设备中常见到的CPCI和PXI实际上是PCI在仪器仪表接口领域的延伸,PXI和PCI-X是两种不同的总线,PCI-X主要用于服务器系统中,在PC中很少使用。具体可以参考我之前转载的博文:http://blog.chinaaet.com/justlxy/p/5100052997

图片[1]-PCIe扫盲——PCIe简介-FPGA CPLD资料源码分享社区-FPGA CPLD-ChipDebug

图中的PCI-E的传输速率指的是实际的有效传输速率,为RAW Data速率的80%,因为PCI-E(Gen1&Gen2,Gen3中使用了新的方式,即128b/130b)中使用了8b/10b编解码技术。关于8b/10b可以参考我之前发的博文:http://blog.chinaaet.com/justlxy/p/5100052814
PCI-Express总线的Spec中明确规定了PCI-Express的缩写为PCIe,但很多情况下,大家为了方便常把它缩写为PCI-E。
PCI-E接口根据总线位宽不同而有所差异,一个PCI Express连接可以被配置成x1, x2, x4, x8, x12, x16和x32的数据带宽。 (x2 and x12 link widths are optional) PCI-E 各种位宽Device可以自由搭配使用,比如x1 的卡可以插到x8的插槽中使用, x8 的卡可以插到x16的插槽中使用,升级方便。

图片[2]-PCIe扫盲——PCIe简介-FPGA CPLD资料源码分享社区-FPGA CPLD-ChipDebugfile://C:Usersxli2AppDataLocalTempct_tmp/2.png

一些常见的PCI-E设备如下图所示:

file://C:Usersxli2AppDataLocalTempct_tmp/3.png图片[5]-PCIe扫盲——PCIe简介-FPGA CPLD资料源码分享社区-FPGA CPLD-ChipDebug

目前PCI-E已经更新到第四代(即PCI-E 4.0,Gen4),很快Gen5也会到来:

image.png

本次连载的博文将以PCI-Express Base Spec V2.0为基础,结合Mindshare的PCI Express System Architecture一书和网络上的一些博客和部分公司的培训教程等。

由于PCI-E是从PCI/PCI-X继承发展而来,PCI-E在应用层(软件上)几乎是全完兼容PCI/PCI-X设备的。在硬件层面上,可以借助PCI-E to PCI/PCI-X桥来与其完成对接。并且PCI-E是一种非常复杂的总线,因此学习PCIe的同时也必须提前对PCI和PCI-X总线有一定的了解,所以下面的连载博文将先从PCI和PCI-X总线介绍开始。但是并不会详细的介绍,而只是提一下其基本的概念,以及PCI-E与PCI/PCI-X的继承与改进的关系。

 

由于本人也是初学,文章中难免会有一些疏忽或者错误,如有发现,恳请指正!此外,最近的事情也比较多,文章的更新速度可能会受到影响,还请见谅。哈哈哈

 

请登录后发表评论

    没有回复内容