坂田网站建设推广公司,陕西省网站备案,wordpress编程,莱芜新闻视频回放不同的处理器系统中#xff0c;PCIe体系结构的实现方式不尽相同。PCIe体系结构以Intel的x86处理器为蓝本实现#xff0c;已被深深地烙下x86处理器的印记。在PCIe总线规范中#xff0c;有许多内容是x86处理器独有的#xff0c;也仅在x86处理器的Chipset中存在。在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总线无关的寄存器。使用这种方式有利于系统软件使用相同的平台管理所有外部设备也利于平台软件的一致性但是仍有其不足之处。