PCIe架构的处理器系统介绍

news2024/12/23 22:55:44

        不同的处理器系统中,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.coloradmin.cn/o/1127199.html

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

相关文章

初识Node.js开发

一、Node.js是什么 1.node.js是什么 官方对Node.js的定义: Node.js是一个基于V8 JavaScript引擎的JavaScript运行时环境。 也就是说Node.js基于V8引擎来执行JavaScript的代码,但是不仅仅只有V8引擎: 前面我们知道V8可以嵌入到任何C 应用…

保证跨境商城源码稳定性的重要性

稳定性保证源码的可靠性 在跨境电商领域,跨境商城源码的稳定性对于商城运营至关重要。一个稳定、可靠的源码能够确保商城的正常运行,提升用户体验,增加交易成功率,并为商城的可持续发展打下基础。 稳定性保证系统顺利运行 跨境商城…

第四个 1024,属于我们!

第四个 1024,只属于我们,愿人世间没有 BUG! if (today1024) {printf("拒绝加班!")} else {printf("没有Bug!")}2023 - 1024 加油! 我是故屿 一个在互联网苟且偷生的工具人 若非生…

内衣洗衣机便宜好用的牌子有哪些?四款公认好用洗内裤机推荐

在机器解放了双手的时代中,洗衣机走进了千家万户,虽然在某种程度上缓解了人们手洗衣服的压力,但还是有不少人选择了人工手洗自己的内衣内裤,甚至连袜子都是手工洗的,这让人很是郁闷,倒不是说洗衣机不方便&a…

Jenkins CLI二次开发工具类

使用Jenkins CLI进行二次开发 使用背景 公司自研CI/DI平台,借助JenkinsSonarQube进行代码质量管理。对接版本 Jenkins版本为:Version 2.428 SonarQube版本为:Community EditionVersion 10.2.1 (build 78527)技术选型 Java对接Jenkins有第…

研发效能(DevOps)职业技术认证-第六期开班啦丨IDCF

本证书是由国家工业和信息化部教育与考试中心颁发的职业技术证书,也是国内首个《研发效能(DevOps)工程师职业技术认证》。该《认证》对研发效能(DevOps)工程师的职业技术分为初级、中级、高级三个专业等级。 IDCF社区…

nrf52832 PWM配置

PWM使用时sdk_config.h文件中配置如下:#define PWM_ENABLED 1 #define PWM0_ENABLED 1 #define NRFX_PWM_ENABLED 1 #define NRFX_PWM0_ENABLED 0sdk_config.h 文件中添加下列配置 // <e> NRFX_PWM_ENABLED - nrfx_pwm - PWM peripheral driver // #ifndef NRFX_PWM_ENA…

uniapp实现webview页面关闭功能

实现思路&#xff1a; 1.关闭按钮是使用原生button添加的close属性。&#xff08;见page.json页面&#xff09; 2.监听关闭按钮的方法。&#xff08;onNavigationBarButtonTap&#xff09; 3.写实现关闭webview所有页面的逻辑。 废话不多说&#xff0c;直接上代码 1.page.…

Java的泛型高级篇

以前在看源码的时候&#xff0c;老是能够看见大写的字母&#xff1a;T D...... 他就是用来标志泛型的。就拿ArrarList E就是 &#xff1a;element的简写 T就是Type。 另外一种就很高级&#xff0c;父级和自己约束性泛型&#xff1a; 定义一个顶级父类&#xff1a;TimeTest publ…

SNCP,子网连接保护简介

文章目录 SNCP特点SNCP的保护原理及类型ODUk SNCP工作原理SNCP分类SNC/N&#xff0c;子网连接保护/非介入监测ODUk SNC/ N 保护示意图ODUk SNC/N 的倒换条件 SNCP&#xff08;SubNetwork Connection Protection&#xff09;是一种跨子网的保护机理&#xff0c;可以保护不同基本…

Dynamics 365 使用ILMerge 合并CRM开发后的DLL

很久以前写过一篇博文&#xff0c;关于用ILMerge 命令合并DLL,当时时纯敲命令行的&#xff0c;现在有了更简单的方式&#xff0c;只需要在NuGet下载如下两个包 另外插件引用第三方dll的新方案Preview来了&#xff0c;不久的将来就不需要使用ILMerge了

《GB/T 8566-2022/ISO/IEC/IEEE:系统与软件工程生存周期过程》国家标准解读,附下载地址

关于企业架构、软件工程等相关内容&#xff0c;基本在行业内工作一段时间都能解释出各自的理解&#xff0c;网络资料更是知识爆炸&#xff0c;看似哪一种都对&#xff0c;其实相对都是个人理解&#xff0c;算不上严谨。 上周工作中涉及架构的企业标准编制审查&#xff0c;对严…

C# U2Net 抠图

效果(u2net.onnx) 效果(u2net_human_seg.onnx) 项目 代码 using Microsoft.ML.OnnxRuntime; using Microsoft.ML.OnnxRuntime.Tensors; using OpenCvSharp; using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Imaging; using Syst…

C# 开发的程序怎么默认以管理员身份运行

C# 在读写注册表或其他的敏感操作时&#xff0c;如果程序未获得管理员权限&#xff0c;操作会报错&#xff0c;可以在exe文件的属性页面里勾选【以管理员身份运行此程序】 那么怎么默认以管理员身份运行呢 方法一 在项目上右键&#xff0c;点击【属性】&#xff0c;点击【安…

ROS系列(三):rosbag 中提取图像数据与帧率对齐

首先说明一下&#xff0c;rosbag的解压方式取决于之前的压缩方式&#xff0c;数据的格式和工具使用的方法有很大关系。当前数据类型是 sensor_msgs/CompressedImage 。 处理数据的topic为 /cam_front_center/csi_cam/image_raw/compressed 当前提取是前置摄像头图像数据。 可…

【23真题】碰瓷重邮成电,题目Mini版本!

今天分享的是23年广西师范大学846的信号与系统部分试题及解析。 本套试难度分析&#xff1a;23年平均分只有90-100分&#xff0c;最高分129分&#xff01;但是我觉得不难。22年广西师范846我也发布过&#xff0c;如有需要戳这里自取&#xff01;该院校考察的是模拟电路和信号系…

工具及方法 - 查电子器件和查说明书

查询电子器件 手里一个产品&#xff0c;上面使用的蓝牙模组是BL871E2&#xff0c;然后想查一下相关信息&#xff0c;发现了下面的查询网站&#xff1a; 查询某颗物料的网站&#xff1a; device.report Search for Electronic Components Price & Stock | DigiPart 查询UG…

【实战】Kubernetes安装持久化工具NFS-StorageClass

文章目录 前言技术积累存储类&#xff08;storage class&#xff09;什么是NFS什么是PV\PVC为什么要用NFS-StorageClass 安装NFS-StorageClass保证N8S集群正常投用安装NFS工具与客户端NFS安装常见错误安装NFS-StorageClass存储器 前言 前面的博文我们介绍了如何用kuberadmin的…

RosettaNet PIPs 简介

RosettaNet背景知识 RosettaNet由主要计算机&#xff0c;消费电子产品&#xff0c;半导体制造商&#xff0c;电信和物流公司组成的联盟组成&#xff0c;共同创建和实施行业范围的开放式电子商务流程标准。这些标准形成了一种通用的电子商务语言&#xff0c;在全球范围内协调供…

【SpringCloud微服务项目实战-mall4cloud项目(5)】——mall4cloud-leaf

mall4cloud-leaf 基于美团leaf的生成id服务 分布式id介绍具体代码及使用项目中的生成id模式具体代码分布式id生成使用 分布式id介绍 分布式ID&#xff08;Distributed ID&#xff09;是在分布式计算环境中生成的唯一标识符或标识号。在分布式系统中&#xff0c;通常需要唯一标…