PCI Express架构与其同族技术高级交换互连(ASI)之间存在显著的区别,但与流行的观点相反,它们都不具备构建鲁棒的多处理器系统的能力。PCI Express标准提供了具有与PCI相同软件架构的先进串行互连技术,并受益于相同的系统级能力。今天,基于PCI的系统能提供多处理器支持,而基于PCI Express的系统也将能拥有这种相同的能力。
今天提供多处理器能力的PCI系统采用了一种称为“非透明桥”的机制。简单地讲,透明的PCI至PCI桥将两个PCI总线段隔离,从而提供扩展负载数量和匹配不同工作频率、总线宽度或电压的能力。非透明的PCI至PCI桥增加了隔离主、从总线段之间地址域的功能。桥“装扮”成一个端点去发现软件,并转换两个域之间的地址。
为了理解域隔离对多处理器系统的重要性,你可以考虑一下如果没有它将发生什么。基于PCI的单处理器系统依靠主处理器来枚举和配置系统,并处理中断和错误情况。因此,主处理器有效地拥有整个系统。如果系统中有两个或多个处理器而且没有特别地隔离它们,那么每个处理器都将尝试提供主处理器功能,并相互争夺系统的控制权。
在多处理器系统中,除了一个处理器外,非透明桥将把所有处理器置于其自己的地址域中。而位于透明桥背后的那个处理器将被保留为结构管理器,用于枚举和配置系统,并处理严重的错误情况。在这类系统中的结构管理器通常提供了与主处理器有关的许多功能。位于非透明桥背后的智能子系统将枚举到桥,而且不会直接感觉到其背后有一个更大的系统。
一旦PCI多处理器设计的主要问题(即地址域隔离问题)得到解决,工程师还需考虑其它重要问题,包括处理器之间的通信、对等数据传输、分布式中断处理以及主处理器或结构管理器故障切换等。
系统中的处理器需要以某种方式互相通信,以共享状态和数据。在基于PCI Express的平台中,它们通过地址映射和转换来实现此目标。这种映射机制允许通过使用基本地址和偏移寄存器来实现特定的、受保护的交互通信。每个智能子系统在其它子系统的存储器中打开一个匹配窗口。处理器还能通过使用所谓的“门铃寄存器”(它可以触发中断以便在域之间轮流切换)和暂存寄存器(它允许从两端访问)来实现通信。
对等传输很容易在PCI和PCI Express中实现,因为它们所有的数据流都是基于地址的。如果数据需要从一个子系统发送到另一个子系统,那么发送源只需把数据瞄准目标子系统的地址范围即可。HSPACE=12 ALT="图1:在多处理器系统中,除了一个处理器外,非透明桥将把所有处理器置于其自己的地址域中。而位于透明桥背后的那个处理器将被保留为结构管理器,用于枚举和配置系统,并处理严重的错误情况。">
分布式中断处理则需要更多的努力。PCI中有几种不同的中断机制,其中一种称为“消息信令中断(MSI)”。这种对PCI-X规范的补充机制是PCI Express的主要中断模式,因为中断是在带内处理的。
PCI Express中的MSI中断采用一种邮寄存储器写数据包格式,允许它按地址被路由到系统中的任何一个处理器。非透明桥还包括输入、输出邮箱中断寄存器,允许采用特殊格式的中断被从一个处理器发送到另一个处理器。
多处理器系统的最后一个问题是结构管理器故障切换,它可以用一种良好定义且经过时间检验的方式来解决。由于每个子系统均位于桥的背后,所以每个处理器节点既可以是透明的(结构管理器),也可以是不透明的(其它智能节点)。位于非透明桥背后的其它智能节点可以是智能I/O(如RAID控制器)、后备结构管理器或并行工作的处理器子系统等。
能工作在透明或非透明模式下的通用桥提供了在必要时将结构管理器移动到另一个子系统的能力。“心跳”消息被从结构管理器发送到后备处理器,而检查点机制在需要故障切换时提供了恢复工作的清晰路径。
最后,与非透明桥相关的端点提供了加载过滤驱动程序的机会,这种程序能向标准软件隐瞒非透明桥及相关的多处理器问题。
早期的ASI芯片预计将于明年发布。因为它承诺了一种强大的机制来提供非常庞大的、可扩展的多处理器系统,所以这已经令后端的通信和存储产业界感到无比兴奋。为此,我们有必要探讨ASI是如何能实现这点的,并将其与采用PCI Express芯片的非透明桥进行比较。
ASI完全按地址路由来分发数据包,从而无需非透明桥。它采用的路由是基于通过系统交换机的路径。每个端点拥有一个网络图,而且数据包头含有到达其目的地的方向。
这种极佳的方法可被用来扩展高带宽和复杂的多处理器系统,但由于它打破了PCI的地址路由模式,因此它破坏了软件的向后兼容性。这意味着需要了解新协议的新芯片。
幸运的是,因为ASI与PCI Express架构在物理层和数据链路层上兼容,所以我们能构建含有这两种架构的系统,使这两种互连互相补充。当ASI芯片的样品面市并准备集成到实际系统中时,市场上将有各种本地模式的PCI Express产品,包括主要类型的I/O和大多数主要的CPU架构。
集成PCI Express端口的CPU尤其重要,因为ASI系统的最初部署将依赖于互连的多个处理器,其中没有一个处理器将了解ASI协议。这些处理器将通过非透明PCI Express桥连接到ASI骨干网,然后与本地的ASI芯片共存。在可预测的未来,这种连接PCI Express子系统的功能强大且可扩展的ASI网络将成为标准。
作者:Larry Chisvin
行销副总裁
PLX技术公司








京公网安备 11011202001138号
