PCIe架构的处理器系统介绍

        不同的处理器系统中,PCIe体系结构的实现方式不尽相同。PCIe体系结构以Intel的x86处理器为蓝本实现,已被深深地烙下x86处理器的印记。在PCIe总线规范中,有许多内容是x86处理器独有的,也仅在x86处理器的Chipset中存在。在PCIe总线规范中,一些最新的功能也在Intel的Chipset中率先实现。本节将以一个处理器系统为例简要介绍RC的实现,并简单归纳RC的通用实现机制。

处理器系统

        在有些处理器系统中,没有直接提供PCI总线,此时需要使用PCIe桥,将PCIe链路转换为PCI总线之后,才能连接PCI设备。在PCIe体系结构中,也存在PCI总线号的概念,其编号方式与PCI总线兼容。一个基于PCIe架构的处理器系统如图所示。

图片

        在上图的结构中,处理器系统首先使用一个虚拟的PCI桥分离处理器系统的存储器域与PCI总线域。FSB总线下的所有外部设备都属于PCI总线域。与这个虚拟PCI桥直接相连的总线为PCI总线0。这种架构与Intel的x86处理器系统较为类似。

        在这种结构中,RC由两个FSB-to-PCIe桥和存储器控制器组成。值得注意的是在图4 7中,虚拟PCI桥的作用只是分离存储器域与PCI总线域,但是并不会改变信号的电气特性。RC与处理器通过FSB连接,而从电气特性上看,PCI总线0与FSB兼容,因此在PCI总线0上挂接的是FSB-to-PCIe桥,而不是PCI-to-PCIe桥。

        在PCI总线0上有一个存储器控制器和两个FSB-to-PCIe桥。这两个FSB-to-PCIe桥分别推出一个×16和×8的PCIe链路,其中×16的PCIe链路连接显卡控制器(GFX),其编号为PCI总线1;×8的PCIe链路连接一个Switch进行PCIe链路扩展。而存储器控制器作为PCI总线0的一个Agent设备,连接DDR插槽或者颗粒。

        此外在这个PCI总线上还可能连接了一些使用“PCI配置空间”管理的设备,这些设备的访问方法与PCI总线兼容,在x86处理器的Chipset中集成了一些内嵌的设备。这些内嵌的设备使用均使用“PCI配置空间”进行管理,包括存储器控制器。

        PCIe总线使用端到端的连接方式,因此只有使用Switch才能对PCIe链路进行扩展,而每扩展一条PCIe链路将产生一个新的PCI总线号。如图4 7所示,Switch可以将1个×8的PCIe端口扩展为4个×2的PCIe端口,其中每一个PCIe端口都可以挂接EP。除此之外PCIe总线还可以使用PCIe桥,将PCIe总线转换为PCI总线或者PCI-X总线,之后挂接PCI/PCI-X设备。多数x86处理器系统使用这种结构连接PCIe或者PCI设备。

        在PCIe总线规范中并没有明确提及PCIe主桥,而使用RC概括除了处理器之外的所有与PCIe总线相关的内容。在PCIe体系结构中,RC是一个很模糊也很混乱的概念。Intel使用PCI总线的概念管理所有外部设备,包括与这些外部设备相关的寄存器,因此在RC中包含一些实际上与PCIe总线无关的寄存器。使用这种方式有利于系统软件使用相同的平台管理所有外部设备,也利于平台软件的一致性,但是仍有其不足之处。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

lua-web-utils和proxy程序示例

以下是一个使用lua-web-utils和https://www.duoip.cn/get_proxy的爬虫程序示例。每行代码后面都给出了详细的中文解释。 -- 导入所需的库 local http require("http") local ltn12 require("ltn12") local json require("json") local web_u…

mac安装jdk

1、下载jdk(我的电脑要下载arm版,截图不对) Java Downloads | Oraclehttps://www.oracle.com/java/technologies/downloads/#jdk17-mac 2、双击安装

详解 Diffusion (扩散) 模型

扩散模型是跨不同深度学习领域使用的生成模型。目前,它们主要用于图像和音频生成。最值得注意的是,这些模型是令人印象深刻的图像生成模型(例如 Dalle2 和稳定扩散)背后的驱动力。我相信您已经看过这些模型生成的闪烁图像。令人惊…

线性表操作的实现--单链表(链式存储结构)

本文参考朱战力老师的数据结构与算法--使用C语言一书 目录 文章目录 前言 一、链表是什么? 二、具体实现 1.单链表的定义 2.初始化ListInitiate(SLNode **head) 3.求当前元素的个数ListLength(SLNode *head) 4.插入Lis…

8.2 矢量图层点要素单一符号使用一

文章目录 前言单一符号(Single symbol)渲染简单标记(Simple Marker)QGis代码实现 SVG标记(SVG marker)QGis代码实现 总结 前言 上一篇教程对矢量图层符号化做了一个整体介绍,并以点图层为例介绍了可以使用的渲染器&am…

c语言进制的转换16进制转换2进制

c语言进制的转换16进制转换2进制 c语言的进制的转换 c语言进制的转换16进制转换2进制一、16进制的介绍二、八四二一法则三、16进制转换2进制 一、16进制的介绍 十六进制: 十六进制逢十六进一,所有的数组是0到9和A到F组成,其中A代表10&#x…

【网络原理】| 应用层协议与传输层协议 (UDP)

🎗️ 主页:小夜时雨 🎗️ 专栏:javaEE初阶 🎗️ 乾坤未定,你我皆黑马 目录 一、应用层协议二、传输层协议(UDP协议) 一、应用层协议 应用层是和代码直接相关的一层,决定…

电能计量与远程抄表的应用

摘要:结合当前电力企业实际的发展概况,可知电力活动开展中对于性能可靠的电能计量及远程抄表依赖程度高,需要注重它们实际应用范围的扩大,满足电力企业长期稳定发展的实际需求。基于此,本文将对电能计量与远程抄表应用…

【前端】Webpack5中Html和CSS的压缩打包

1.Webpack5简介 1.1.Webpack简介 (1)webpack的发展历程 2012.3—webpack(问世) 2014.2—webpack1 2016.12—webpack2 2017.6—webpack3 2018.2—webpack4 2020.10—webpack5(要求node版本10.13) &a…

Visual Studio Professional 2019 软件安装教程(附安装包下载)

Microsoft Visual Studio 是一个非常强大的集成开发环境(IDE),适用于 Windows 上的 .NET 和 C 开发人员。它提供了一系列丰富的工具和功能,可以提升和增强软件开发的每个阶段。 Visual Studio IDE 是一个创意启动板,可…

uniapp中 background-image 设置背景图片不展示问题

有问题 <view class"file-picker__box jsz" tap"jszxszUpload(jsz)"></view>.jsz {background-image: url(../../static/example_drive.png); }解决1 <view class"file-picker__box jsz" :style"{ background-image: url(…

JS小数运算精度丢失的问题

工作中会不会经常会碰到一些数据指标的计算&#xff0c;比如百分比转化&#xff0c;保留几位小数等&#xff0c;就会出现计算不准确&#xff0c;数据精度丢失的情况。通过这篇分享借助第三方库能够轻松解决数据精度丢失的问题。 一、场景复现 JS数字精度丢失的一些常见问题 /…

SpringBoot+SpringMVC+MybatisPlus

文章目录 SpringBootSpringMVCMybatisPlus怎样在SpringBoot中引入SpringMVC?首先看下引入的依赖创建数据库表创建DO类创建MyBatisPlus动态代理接口创建controller控制器接收http请求创建SpringBoot配置文件application.yml最后创建启动类 SpringBootSpringMVCMybatisPlus 怎样…

cuda卸载

去查看你的电脑显卡对应的cuda版本&#xff0c;不然还是一整个用不到gpu的情况嘿嘿. 啊啊啊啊打开控制面板看一下&#xff0c;驱动不要乱卸载&#xff1a; 这些东西不能全部卸载了哦&#xff0c;只能卸载含有“CUDA”的那几个&#xff08;其实其他的可能也没有用 但是不懂的哇 …

关于路由转发

路由表的作用 路由表的作用&#xff1a;目标网络匹配路由表&#xff0c;从相应网络转发&#xff1b;不匹配路由表&#xff0c;丢弃或转发至默认路由器。 路由转发的原理 根据IP地址找到目标网络&#xff0c;由应路由器解封装查看目标网络是否可达&#xff0c;重新封装进行转…

Axure 9 使用 font awesome 字体发布原型

我使用的版本为Font awesome 6.1.1&#xff0c;安装后在axure中新增3个字体 如果直接发布&#xff0c;在没有安装Font awesome的电脑上无法正常显示字体图标&#xff0c;需要在发布前进行设置。 设置方法&#xff1a; 点击共享 点开设置 在字体设置页&#xff0c;填入图中所示…

FreeRTOS 消息队列 详解

目录 什么是队列&#xff1f; 消息队列特点 1. 数据入队出队方式 2. 数据传递方式 3. 多任务访问 4. 出队、入队阻塞 消息队列相关 API 函数 1. 创建队列 2. 写队列 3. 读队列 消息队列实操 什么是队列&#xff1f; 队列又称消息队列&#xff0c;是一种常用于任务间…

创建 Edge 浏览器扩展教程(下)

创建 Edge 浏览器扩展教程&#xff08;下&#xff09; 创建扩展教程&#xff0c;第 2 部分1&#xff1a;更新弹出窗口.html以包含按钮2&#xff1a;更新弹出窗口.html在浏览器选项卡顶部显示图像3&#xff1a;创建弹出式 JavaScript 以发送消息4&#xff1a;从任何浏览器选项卡…

全国三维数字化创新设计大赛湖北赛区省赛成功举办

须弥芥子&#xff0c;数字如海。10月14日—15日&#xff0c;2023 年数字科技文化节——第16届全国三维数字化创新设计大赛湖北赛区省赛暨产教联合体大会在武汉软件工程职业学院成功举行。 &#xff08;大赛全体专家领导合影&#xff09; 全国三维数字化创新设计大赛组委会副秘…

Windows 安装 jmeter

注&#xff1a;在安装Jmeter之前&#xff0c;请先检查下电脑有没有装JDK&#xff1a;开始->运行->然后输入cmd->进入命令行界面&#xff0c;输入java -version &#xff0c; 出现以下信息就是此电脑已安装了JDK&#xff1a; 下载地址 http://jmeter.apache.org/downlo…