PCIe“拍了拍”PCI- PCI和PCIe发展历史
自PC在1981年被IBM发明以来,主板上都有扩展槽用于扩充计算机功能。现在最常见的扩展槽是PCIe插槽,实际上在你看不见的计算机主板芯片内部,各种硬件控制模块大部分也是以PCIe设备的形式挂载到了一颗或者几颗PCI/PCIe设备树上。固件和操作系统正是通过枚举设备树们才能发现绝大多数即插即用(PNP)设备的。那究竟什么是PCI呢?
PCI/PCIe的历史
在我们看PCIe是什么之前,我们应该要了解一下PCIe的祖先们,这样我们才能对PCIe的一些设计有了更深刻的理解,并感叹计算机技术的飞速发展和工程师们的不懈努力。
1. ISA (Industry Standard Architecture)
2. MCA (Micro Channel Architecture)
3. EISA (Extended Industry Standard Architecture)
4. VLB (VESA Local Bus)
5. PCI (Peripheral Component Interconnect)
6. PCI-X (Peripheral Component Interconnect eXtended)
7. AGP (Accelerated Graphics Port)
8. PCI Express (Peripheral Component Interconnect Express)
下面这个大表列出所有的速度比较。其中一些x8,x16的概念后面细节部分有介绍。
表1‑1 PCI到PCIe各历程对比
标准 |
时钟 |
传输带宽 |
每时种数据 |
带宽 /MB/s |
ISA |
4.77 MHz |
8 |
1 |
4.77 |
ISA |
8 MHz |
160.5 |
0.5 |
8 |
MCA |
5 MHz |
16 |
1 |
10 |
MCA |
5 MHz |
32 |
1 |
20 |
EISA |
8.33 MHz |
32 |
1 |
33.3(16.7 typically) |
VLB |
33 MHz |
32 |
1 |
133 |
PCI |
33 MHz |
32 |
1 |
133 |
PCI-X 66 |
66 MHz |
64 |
1 |
533 |
PCI-X 133 |
133 MHz |
64 |
1 |
1066 |
PCI-X 266 |
133 MHz |
64 |
2 |
2132 |
PCI-X 533 |
133 MHz |
64 |
4 |
4266 |
AGP x1 |
66 MHz |
32 |
1 |
266 |
AGP x2 |
66 MHz |
32 |
2 |
533 |
AGP x4 |
66 MHz |
32 |
4 |
1066 |
AGP x8 |
66 MHz |
32 |
8 |
2133 |
PCIe 1.0 x1 |
2.5 GHz |
1 |
1 |
250 |
PCIe 1.0 x4 |
2.5 GHz |
4 |
1 |
1000 |
PCIe 1.0 x8 |
2.5 GHz |
8 |
1 |
2000 |
PCIe 1.0 x16 |
2.5 GHz |
16 |
1 |
4000 |
PCIe 2.0 x1 |
5 GHz |
1 |
1 |
500 |
PCIe 2.0 x4 |
5 GHz |
4 |
1 |
2000 |
PCIe 2.0 x8 |
5 GHz |
8 |
1 |
4000 |
PCIe 2.0 x16 |
5 GHz |
16 |
1 |
8000 |
PCIe 3.0 x1 |
8 GHz |
1 |
1 |
1000 |
PCIe 3.0 x4 |
8 GHz |
4 |
1 |
4000 |
PCIe 3.0 x8 |
8 GHz |
8 |
1 |
8000 |
PCIe 3.0 x16 |
8 GHz |
16 |
1 |
16000 |
科技的每一步前进都是为了解决前一代中出现的问题,这里的问题就是速度。作为扩展接口,它主要用于外围设备的连接和扩展,而外围设备吞吐速度的提高,往往会倒推接口速度的提升。第一代ISA插槽出现在第一代IBM PC XT机型上(1981),作为现代PC的盘古之作,8位的ISA提供了4.77MB/s的带宽(或传输率)。到了1984年,IBM就在PC AT上将带宽提高了几乎一倍,16位ISA第二代提供了8MB/s的传输率。
之后各个厂家开始针对ISA进行升级,不过后来由于兼容性及速度瓶颈,虽然短暂的出现了EISA和VLB总线,但是最后也被Intel组建的PCI-SIG (PCI Special Interest Group)(PCI 特殊兴趣组J)的企业联盟,提出的PCI(Peripheral Component Interconnect)总线协议(1992)年所取代。
正是由于当时Intel并没有采封闭这一总线,使得PCI得到广泛推广和使用。并且统一之后的PCI总线刺激外围设备制造商进行不断地创新,丰富了整个PC行业的发展。
PCI总线标准第一次提出就提供了133MB/s的带宽(33MHz时钟,每时钟传送32bit)。
2004年,Intel觉得PCI总线还是不够,于是又搞起了小团体革了PCI的命。PCI express(PCIe,注意官方写法是这样,而不是PCIE或者PCI-E)诞生了,以上就是简单的PCIe诞生过程,看似简单,其实是一代代“革命者”不断追求完美才形成今天的PCIe。
从下面的主频变化图中,大家可能注意到更新速度越来越快。
图1‑1 主频变化图
下面简单总结一下PCI标准的特点
1. 它是个并行总线。在一个时钟周期内32个bit(后扩展到64)同时被传输。引脚定义如下:
图1‑4 PCI引脚定义
地址和数据在一个时钟周期内按照协议,分别一次被传输。
2. PCI空间与处理器空间隔离。PCI设备具有独立的地址空间,即PCI总线地址空间,该空间与存储器地址空间通过Host bridge隔离。处理器需要通过Host bridge才能访问PCI设备,而PCI设备需要通过Host bridge才能主存储器。在Host bridge中含有许多缓冲,这些缓冲使得处理器总线与PCI总线工作在各自的时钟频率中,彼此互不干扰。Host bridge的存在也使得PCI设备和处理器可以方便地共享主存储器资源。处理器访问PCI设备时,必须通过Host bridge进行地址转换;而PCI设备访问主存储器时,也需要通过Host bridge进行地址转换。
深入理解PCI空间与处理器空间的不同是理解和使用PCI的基础。
3.扩展性强。PCI总线具有很强的扩展性。在PCI总线中,Root Bridge可以直接连出一条PCI总线,这条总线也是该Root bridge所管理的第一条PCI总线,该总线还可以通过PCI桥扩展出一系列PCI总线,并以Root bridge为根节点,形成1颗PCI总线树。在同一条PCI总线上的设备间可以直接通信,并不会影响其他PCI总线上设备间的数据通信。隶属于同一颗PCI总线树上的PCI设备,也可以直接通信,但是需要通过PCI桥进行数据转发。
PCI后期越来越不能适应高速发展的数据传输需求,PCI-X和AGP走了两条略有不同的路径,PCI-x不断提高时钟频率,而AGP通过在一个时钟周期内传输多次数据来提速。随着频率的提高,PCI并行传输遇到了干扰的问题:高速传输的时候,并行的连线直接干扰异常严重,而且随着频率的提高,干扰(EMI)越来越不可跨越。
所以PCIe“拍了拍”PCI,就把PCI“拍在沙滩上”了。
推荐阅读
华为_2020数字IC笔试
华为经典FPGA设计全套入门技巧资料分享
基于FPGA的网口通信设计(完结)
Vivado 2020.1 开放下载,中文资料随贴奉送
Vivado 2020.1 开放下载,中文资料随贴奉送
一文学会使用全球第四大数字芯片仿真器iverilog!
数模接口设计JESD204B协议、Vivado License及相关参考设计
PCIe 她来了
点击上方字体即可跳转阅读哟
PCIe“拍了拍”PCI- PCI和PCIe发展历史相关推荐
- 采用pci的插槽计算机,从VGA视频采集卡看PCI插槽与PCI-E插槽
带宽和数据传输速率.压缩等一直视频采集卡的性能标准,而视频采集卡是连接视频源和计算机的桥梁,这些都与计算机数据传输协议和数据传输总线.信号控制器等有着密切关系,在采集卡的板卡中都有两个连接设备,一个是 ...
- linux配置pcie无线网卡,【Linux c】读写pcie配置空间(安装lib库)
readme.txt + pcie.c + in.txt +Makefile 可参考源码是: lspci readme.txt Please open the terminal in your lin ...
- PCI - PCI概述
从1992年创立规范到如今,PCI总线已成为了计算机的一种标准总线.由PCI总线构成的标准系统结构如图一所示. PCI总线取代了早先的ISA总线.当然与在PCI总线后面出现专门用于显卡的AGP总线,与 ...
- z370支持pcie信号拆分吗_不再混乱 PCI-E插槽都有哪些样子?
本文经超能网授权转载,其它媒体转载请经超能网同意. 主板上的扩展插槽曾经是多种多样的,例如曾经非常流行的组合就是PCI插槽搭配AGP插槽,其中AGP插槽主要用在显卡上,而PCI插槽的用途则更广一些,不 ...
- PCIe热插拔机制(详细)总结-PCIe专题知识(五)
目录 前言 一.概述 二.原理详解 2.1 热插拔原理总结 2.2 热插拔软硬件要求 三.其他相关知识链接 1.PCIe物理层总结-PCIE专题知识(一) 2.PCIe数据链路层图文总结-PCIe专题 ...
- pyqt怎么给字体加粗_微信拍一拍可设置后缀?怎么用?还有更多新功能!
阅读本文前,请您先点击上面的蓝色字体,再点击"关注",这样您就可以继续免费收到文章了.每天都有分享,完全是免费订阅,请放心关注. 注:本文转载自网络,如有侵权,请联系删除谢谢. 微 ...
- antd 动态添加表单_ZooTeam 拍了拍你,来看看如何设计动态化表单
? 这是第 58篇不掺水的原创,想要了解更多,请戳上方蓝色字体:政采云前端团队关注我们吧- 本文首发于政采云前端团队博客:ZooTeam 拍了拍你,来看看如何设计动态化表单 https://www.z ...
- 微信文件撤回时间多长_微信悄悄上线新玩法:拍了拍、朋友圈可重新编辑
当当当,我猜大家应该是看到这么吸引人的标题进来的吧,确实这个超级实用的功能你还真的要知道. 今天写的部分内容,其他的全部内容将会在安卓微信7.0.16正式版发布的时候进行一次大汇总. 我猜大家昨天应该 ...
- ios 权限提示语_撩妹神技?iOS 微信偷偷上线“拍一拍”
微信 概要 / 最近微信新功能不断,安卓和 iOS 前后上线了「修改微信号」功能,给了网友们"重新做人"的机会,这不,又来了一个新功能,iOS 的微信可以"拍一拍&quo ...
最新文章
- 简单mysql 查询_MySQL简单查询详解
- Asigra无代理备份:“云”数据保护的先行者
- 配置文件 web.config 的讨论
- Java SecurityManager checkPackageDefinition()方法与示例
- 企业邮箱及邮件服务器架设
- 长微博android,Android 上最强大的长微博工具:BlackLight 长微博
- 免费UNIX体验中心
- 对象创建从农业社会到共产主义的发展
- yeta机器人_Yeta智能语音电话机器人开放平台接入指南(2)
- Android 开源项目和文章集合(更新:2022.03.21)
- 百度网盘永久分享链接-注册电气工程师(注电)历年考试真题PDF, Word版资料(含答案), 相关视频资料
- chrome os 安装手册
- java 实现cmyk转rgb图片格式
- 有道云脑图 mindmap文件必须会员才能导出
- python浮点数加整数_Python中整数和浮点数运算
- 深度学习( Deep Learning )软件资源列表
- python汉明距离检索_【LeetCode 461】汉明距离(Python)
- virtual Box与Vagrant的安装与踩坑
- 最常用的65条正则表达式
- 推荐几款常用的企业网盘软件,你喜欢哪一款?
热门文章
- 修图教程:为照片增加云雾效果
- 《有一种错过叫作遗憾》
- PTA 7-47 打印选课学生名单
- lotus version 0.3.0+git1bfa2311 安装 interopnet
- git:remote: [session-f044bfa6] well: Incorrect username or password (access token)
- 禁毒海报|国际禁毒日海报素材图片大全
- 高中知识复习与拓展——数列的求和
- QQ邮箱疯狂的附件:别人笑我太疯癫 我笑别人看不穿
- 澳洲学计算机难毕业吗,澳洲新南威尔士大学计算机专业好吗
- python英文字符频率统计_Python中怎样统计英文文本中的字母频次?