从零开始讲PCIe(5)——66MHZ的PCI总线与其限制

一、前言

        在之前的内容中,我们已经基本了解了PCI总线的设计思路和传输机制,之前的内容我们都是基于33MHZ版本的PCI总线进行学习的,为了支持更到的带宽,PCI协议还有一种66MHZ的版本。

二、高带宽PCI(66MHZ)

        为了支持更高的带宽,PCI规范进行了更新,支持了更宽(64位)和更快(66 MHz)的版本,从而实现了533 MB/s的传输速率。图1-14展示了一个66 MHz、64位PCI系统的示例。

        在更新的PCI版本中,64位宽度使得数据传输量在每个时钟周期内增加了一倍,而66 MHz的时钟频率也进一步提升了数据传输速率。这些改进使得PCI总线能够更好地支持高带宽需求的设备,如高性能网络接口卡、显卡和存储控制器。

        具体来说,在这种系统中,每个时钟周期能够传输64位(8字节)的数据,并且每秒钟的时钟频率为66百万次,因此最大带宽计算如下:带宽 = 64位(8字节) × 66 MHz = 528 MB/s(理想状态下),近似为533 MB/s。这种带宽的提升对当时的硬件系统来说是重要的进步,能够更好地应对不断增长的外设带宽需求。

三、66MHZ PCI的限制

        尽管66 MHz的PCI总线相较于33 MHz的总线将吞吐量翻了一倍,但这一设计有一个显著的缺陷:依然使用相同的反射波切换模型,但可用的时间预算只有原来的一半。这意味着总线的负载必须大幅减少。结果是每条总线只能支持一个扩展卡。如果想增加更多设备,就必须增加更多的PCI桥接器和总线,这不仅增加了成本,还增加了电路板的空间需求。此外,64位PCI总线增加了引脚数量,导致系统成本上升,同时降低了系统的可靠性。这些因素共同作用,导致64位或66 MHz版本的PCI总线在市场上的普及受限。

        简而言之,虽然66 MHz、64位PCI提高了数据传输速率,但由于负载限制、系统复杂性和成本的增加,它在实际应用中并没有得到广泛推广。这也是为什么多数系统选择继续使用较低频率和32位PCI总线的原因。

        在66 MHz以上的时钟频率下,传统的并行PCI总线难以有效工作。这是由于总线上存在的负载以及信号的传输延迟导致的。在66 MHz时,时钟周期为15纳秒,其中3纳秒分配给接收端用于建立时间(setup time)。对于PCI总线的"non-registered信号模型来说,减少接收端的信号建立时间到低于3纳秒是不现实的。其余12纳秒的时间预算则用于发射端的输出延迟和信号传输时间。

        要想提高PCI总线的频率,意味着必须缩短时钟周期。然而,如果时钟频率超过66 MHz,传输的信号在接收端将无法及时接收并采样,从而导致数据错误。

        为了解决这一问题,PCI-X总线引入了一种改进的方式,即在使用输入信号之前,将所有输入信号先通过触发器(Flip-Flop)进行寄存处理。通过这种方法,信号的建立时间减少到1纳秒以下。建立时间的减少允许PCI-X总线以更高的频率运行,例如100 MHz甚至133 MHz。

四、PCI总线小结

        PCI(Peripheral Component Interconnect)是上世纪90年代广泛应用的并行总线标准,旨在为计算机系统中的外设设备提供高效的通信和数据传输接口。它支持显卡、声卡、网卡等多种设备,并通过即插即用(Plug and Play)功能简化设备的安装和配置,使操作系统能够自动识别并分配资源。PCI还允许每个设备包含多个独立的功能模块(function),增强了灵活性。

        PCI总线采用并行总线架构,多个设备共享同一总线进行通信,通过仲裁器控制设备的总线访问,确保设备之间的有序通信。它支持三种地址空间:内存地址空间用于设备的内存映射,允许CPU通过标准内存读写操作与设备交互;I/O地址空间专门用于外围设备的输入输出操作,CPU通过IN和OUT指令访问;配置地址空间则用于设备的识别和资源分配,每个PCI设备有256字节的配置空间,访问方式通过特定的I/O端口实现。此外,PCI支持多功能设备,每个设备最多可以有8个功能(function),如网络适配器的有线和无线功能。

        PCI具有多个优势:即插即用功能(Plug and Play)使操作系统能够自动识别设备并分配资源,无需用户干预;设备兼容性强,支持显卡、声卡、网卡等多种设备;其中断管理机制通过INTA#等中断信号与系统通信,实现高效的中断处理。

        为提高性能,PCI通过增加总线位宽(从32位到64位)和提高时钟频率(从33 MHz到66 MHz)来提升带宽,达到每秒533 MB的传输速度。然而,PCI的并行架构在更高频率下受到电气负载和信号延迟的限制,特别是在66 MHz时,其扩展能力和信号完整性遇到了瓶颈。为了支持更多设备,系统通常需要增加PCI桥接器和更多总线,这不仅提高了成本,还占用了更多板载空间。此外,PCI的并行设计导致带宽共享问题,多个设备同时工作时总线带宽被分摊,影响了整体性能。

        为了在不牺牲兼容性的情况下进一步提高带宽和速度,PCI-X被引入作为PCI的增强版本。PCI-X保持了与传统PCI的硬件和软件兼容性,但将频率提升至100 MHz甚至133 MHz,最大带宽达到1.06 GB/s至4.26 GB/s。PCI-X通过使用寄存器输入信号减少了建立时间,解决了PCI在高频率下的时序问题。然而,PCI-X仍然基于并行架构,存在引脚数量增加和扩展性限制等问题,最终未能广泛普及。随着技术的进步,PCI Express(PCIe)成为PCI和PCI-X的继任者。PCIe采用串行点对点连接,彻底解决了并行总线带宽共享问题,提供了更高的传输速率、更灵活的扩展能力以及更低的功耗。尽管如此,PCI和PCI-X在计算机硬件发展史上具有重要的地位,推动了设备互连技术的进步,并为现代系统的架构奠定了基础。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1555344.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

UML类图全解析

1.UML的基本介绍 1.1什么是UML 1.UML > 统一建模语言,是一种用于软件系统分析和设计的语言工具,它用于帮助软件开发人员进行思考和记录思路的结果。 2.UML本身是一套符号的规定,就像数学符号和化学符号一样,这样符号用于描述软…

dll动态库加载失败导致程序启动报错以及dll库加载失败的常见原因分析与总结

目录 1、问题说明 2、dll库的隐式加载与动态加载 2.1、dll库的隐式加载 2.2、dll库的显式加载 3、使用Process Explorer查看进程加载的dll库信息以及动态加载的dll库有没有加载成功 3.1、使用Process Explorer查看进程加载的dll库信息 3.2、使用Process Explorer查看动态…

交叠型双重差分法

交叠型双重差分法(Staggered Difference-in-Differences, Staggered DiD)是一种扩展的双重差分(Difference-in-Differences, DiD)方法,用于处理多个时间点的政策干预或处理组(treatment group)并…

JavaWeb的小结02

第2章-第2节 一、知识点 HttpServletRequest请求对象、HttpServletResponse响应对象、响应内容类型Content-Type、请求转发、重定向、ServletContext对象。 二、目标 深刻理解HttpServletRequest对象的作用。 深刻理解HttpServletResponse对象的作用。 掌握HttpServletRequ…

企业必备:搭建大模型应用平台实操教程

最近AI智能体很火,AI智能体平台化产品肯定属于大公司的。但在一些场景下,尤其是对业务数据要求很高的公司,那就只能用私有大模型。不一定完全是为了对外提供服务,对内改造工作流也是需要的。所以 我感觉未来大部分企业都会搞一个…

普渡PUDU MT1:AI赋能,破解大面积场景清洁新挑战

普渡AI智能扫地机器人PUDU MT1:破解大面积场景清洁难题的新利器 在仓储物流、工业车间、交通枢纽、大型商场等大面积场景中,清洁难题一直是管理者们头疼的问题。这些区域面积广阔,清洁任务繁重,传统清洁方式难以胜任。然而,普渡机器人最新推出的AI智能扫地机器人PUDU MT1…

什么是 HTTP Get + Preflight 请求

当在 Chrome 开发者工具的 Network 面板中看到 GET Preflight 的 HTTP 请求方法时,意味着该请求涉及跨域资源共享 (CORS),并且该请求被预检了。理解这种请求的背景,主要在于 CORS 的工作机制和现代浏览器对安全性的管理。 下面是在 Chrome …

ConcurrentHashMap在JDK1.7和1.8的区别,详解

目录 1.了解HashMap底层插入原理 2.ConcurrentHashMap 是什么? HashTable的实现 3.ConcurrentHashMap 1.7和1.8的区别 4、JDK1.7 中的ConcurrentHashMap实现原理 6、JDK1.8中的ConcurrentHashMap 7.链表转红黑树条件 1.8 put方法 8.并发扩容 9.总结 首先呢…

Origin正态分布检验

在spass中用Shapiro-Wilk检验--正态分布检测 Shapiro-Wilk检验--正态分布检测_spss shapiro-wilk检验-CSDN博客

数据服务-实时同步(sersync)

1. 概述 1.之前我们通过rsync定时任务实现定时备份/同步 2. 对于NFS我们需要进行实时同步 2. Sersync原理 3. 上手指南 环境主机web0110.0.0.7(nfs客户端)nfs0110.0.0.31(rsync客户端) (nfs服务端)backup10.0.0.41(rsync服务端) 3.1 rsync服务端准备 参考: 数据服务-备份服务…

好用便宜的头戴式耳机哪款好?强推四款高分爆单耳机精品!

音质,是耳机的灵魂。头戴式降噪耳机,以其卓越的音质表现,为您演绎音乐的真谛。无论是细腻的情感表达,还是震撼的音效体验,它都能让您感受到音乐的魅力所在。那好用便宜的头戴式耳机哪款好?,这里…

为什么芯片有多个不同的供电电压?

一、为什么芯片有多个不同的供电电压? 优化性能与功耗:芯片的核心部分(Core)和输入输出部分(IO)可能采用不同的电压。核心电压通常较低,以减少功耗和发热,提高能效;而IO电…

Linux驱动开发常用调试方法汇总

引言:在 Linux 驱动开发中,调试是一个至关重要的环节。开发者需要了解多种调试方法,以便能够快速定位和解决问题。 1.利用printk 描述: printk 是 Linux 内核中的一个调试输出函数,类似于用户空间中的 printf。它用于…

CSID-GAN:基于生成对抗网络的定制风格室内平面设计框架论文阅读

CSID-GAN: A Customized Style Interior Floor Plan Design Framework Based on Generative Adversarial Network 摘要前言II. CSID-GAN METHODA. Overall FrameworkB. Algorithm and Loss Function III. DATASETS AND EVALUATION METRICSA. DatasetsB. Evaluation Metrics IV.…

SAP MM学习笔记 - 豆知识10 - OMSY 初期化会计期间,ABAP调用MMPV/MMRV来批量更新会计期间(TODO)

之前用MMRV,MMPV来一次一个月来修改会计期间。 如果是老的测试机,可能是10几年前的,一次1个月,更新到当前期间,搞个100多次,手都抖。 SAP MM学习笔记 - 错误 M7053 - Posting only possible in periods 2…

【web安全】——逻辑漏洞

1.逻辑漏洞 1.1. 简介 逻辑漏洞就是指攻击者利用业务/功能上的设计缺陷,获取敏感信息或破坏业务的完整性。一般出现在密码修改、越权访问、密码找回、交易支付金额等功能处。 逻辑漏洞的破坏方式并非是向程序添加破坏内容,而是利用逻辑处理不严密或代码问题或固有不足&#x…

Timeline: 时间线轮播多图

对全国2014-2023年各省市的人口,做出动态柱状图/时间线轮播多图,即每隔一定时间间隔,自动的切换2014、2015、....2023各省市的人口(即2014-2023年全国省市人口排名前12的情况) 1、模板 # -*- coding: gbk -*- from pyecharts import option…

智慧农业案例 (二)- 智能化灌溉系统

橙蜂智能公司致力于提供先进的人工智能和物联网解决方案,帮助企业优化运营并实现技术潜能。公司主要服务包括AI数字人、AI翻译、领域知识库、大模型服务等。其核心价值观为创新、客户至上、质量、合作和可持续发展。 橙蜂智农的智慧农业产品涵盖了多方面的功能&…

使用Buildpacks构建Docker镜像

## 使用Buildpacks构建Docker镜像 ![](../assets/运维手册-Buildpacks-Buildpacks.io.png) ### Buildpacks简介 与Dockerfile相比,Buildpacks为构建应用程序提供了更高层次的抽象。具体来说,Buildpacks: * 提供一个平衡的控制,…

Elasticsearch学习笔记(五)Elastic stack安全配置二

一、手动配置http层SSL 通过前面的配置,我们为集群传输层手动配置了TLS,集群内部节点之间的通信使用手动配置的证书进行加密,但是集群与外部客户端的http层目前还是使用的自动配置,集群中HTTP的通信目前仍然使用自动生成的证书ht…