采用桥接方案还是纯PCIe方案
扫描二维码
随时随地手机看文章
随着采用纯PCI Express(PCIe)系统的逐渐普及,许多常用端点解决方案正在针对PCIe连接进行重新设计。
这些解决方案包括网络接口卡(NIC)、存储主机总线适配器(HBA)、图形卡、并口卡以及以前采用PCI和/或PCI-X接口的大量其它I/O功能卡。然而,许多端点芯片一直没有重新设计成纯PCIe芯片,而且事实上许多芯片根本就没有计划要这样做。本文将讨论PCIe端点解决方案是采用纯 PCIe芯片,还是采用PCI(或PCI-X)芯片再加上PCIe-to-PCI/PCI-X桥所要考虑的因素。
这些桥产品已经上市,它们为端点设计师提供了快速升级到PCIe的捷径,并能在纯PCIe的系统板上构建PCI/PCI-X插槽。业界最初的预想是只有当所有端点解决方案都采用纯PCIe芯片时这些桥才有市场。然而,在PCIe系统面市数年后,仍有不少端点解决方案没有采用纯PCIe接口进行重新设计。是否要将端点芯片升级到PCIe,需要考虑不少因素,其中包括纯PCIe芯片实现成本与市场机会的比较、端点的性能要求,以及开发纯PCIe方案所要求的PCIe IP的可用性和兼容性。
我们可以通过下面三个接近真实世界的案例研究中所进行的折衷处理,来看看其中蕴含了哪些设计决策:1)开发新的纯PCIe的CPU芯片解决方案,并利用该芯片创建SATA RAID控制器插卡;2)在现有纯PCI-X芯片上增加桥以建立PCIe SCSI主机总线适配器(HBA);3)在采用纯PCIe芯片的最新GPU做的图形卡上增加桥以建立PCI连接。
要不要采用桥所需考虑的因素有哪些呢?为了简化讨论过程,我们假设具有足够性能和带宽的纯PCI-X解决方案已经投产,那么所需考虑的问题是使用纯PCI-X解决方案再加上连接PCIe的桥,还是开发全新的ASIC,并用PCIe链路替代PCI-X总线。
使用桥来加快产品上市降低开发成本
使用桥与现有PCI/PCI-X解决方案有两大充足理由:一是上市时间(TTM),二是开发成本。在TTM方面的优势非常明显:使用两种现成的成功解决方案可以使设计师直接进入电路版图设计阶段,从而可以留出大量开发时间用于产品验证阶段。之所以能够实现TTM优势,是因为来自新芯片设计、创建新掩模组以及验证和认证新芯片所需时间显著减少。这些工作通常要花一年多的时间,这么长的时间可以直接留给板卡开发。TTM延迟将导致严重的收入损失,因为当新芯片设计出来时,竞争性解决方案已被客户选用,而本公司当前设计会被淘汰。
另外,纯PCIe解决方案的开发成本相当高昂。事实上对较低批量的项目来说这是不可逾越的障碍,因为它无法消化包括2.5Gbps PCIe链路在内的芯片所要求的上百万美元费用。
纯PCIe方案可降低制造成本,缩小板级占用空间
当开发出带PCIe链路的新型ASIC芯片时,就不再需要增加桥这样的产品了。另外,与桥相关的电路板面积以及支持PCI或PCI-X总线所需的引脚都可以消除。原总线接口要求100多个引脚,采用纯PCIe方案则可以减少到4个(针对PCIe x1链路而言,若是x4链路引脚数量则为16)。这种引脚数量的减少同样可以降低ASIC成本,减小外形尺寸。
是否用桥的考虑因素
桥的加入可能增加也可能降低解决方案的性能。桥本身会引入延迟,因此会降低突发业务的吞吐量。不过,如果PCIe器件能够指定可预取的地址空间,那么利用预取可以提高吞吐量。这种技术一般只可用于嵌入式系统。表1总结了是否使用桥的一些关键考虑因素。
案例1:利用纯PCIe芯片构建SATA RAID存储控制器卡
SATA RAID控制器解决方案几年前就有了,最早采用的是32位PCI接口。随着SATA-2硬盘驱动器性能要求的不断提高,64位PCI-X接口现已非常普及。当PCIe推出后,服务器很快就转向PCIe,从而推动了同一RAID控制器的PCIe版本的迅速开发。一些RAID卡设计师插入PCI-X到 PCIe的桥,以此提供PCIe连接;也有的设计师采用纯PCIe的ASIC芯片设计新的RAID卡。还有些设计师两种方案都做,在基于桥的设计赢得一些早期用户的采纳后再实施纯PCIe方案。让我们分析一下后者,以便了解他们作出这种选择的根本原因。
案例1:利用纯PCIe芯片构建SATA RAID存储控制器卡
SATA RAID控制器解决方案几年前就有了,最早采用的是32位PCI接口。随着SATA-2硬盘驱动器性能要求的不断提高,64位PCI-X接口现已非常普及。当PCIe推出后,服务器很快就转向PCIe,从而推动了同一RAID控制器的PCIe版本的迅速开发。一些RAID卡设计师插入PCI-X到 PCIe的桥,以此提供PCIe连接;也有的设计师采用纯PCIe的ASIC芯片设计新的RAID卡。还有些设计师两种方案都做,在基于桥的设计赢得一些早期用户的采纳后再实施纯PCIe方案。让我们分析一下后者,以便了解他们作出这种选择的根本原因。
图1:SATA RAID控制器
在本案例中,基于PCI-X RAID芯片的板卡在市场上才面市不久,PCIe版的卡就有需求了。既然这是长期发展的必然趋势,而且SATA RAID功能又有足够大的需求量,因此就选择了开发ASIC,也就是开发需要花14个月时间进行设计和工艺变更才能实现的纯PCIe解决方案(见图1)。工艺技术之所以要改变是因为纯PCI-X的RAID控制器使用的0.18微米CMOS技术无法提供PCIe物理层(PHY)单元。由于新的PHY单元要求以及向更新工艺(0.13微米CMOS)的转变,ASIC实现似乎存在一定的风险。为了缩短TTM、降低芯片开发的风险,因此就有了“两条腿走路”的方案。这样可以快速部署基于桥的解决方案,从而满足早期用户的需求,一旦ASIC芯片通过认证,便可以推更低成本的纯PCIe方案了。
案例2:使用PCIe到PCI-X桥创建SCSI HBA
目前并行SCSI存储还没有足够多的市场机会,因此开发纯PCIe SCSI HBA芯片的时机还不成熟。这意味着在现有SCSI HBA之前放置PCIe到PCI-X桥,就可以满足PCIe SCSI卡的要求(见图2)。这样做有两大好处:缩短TTM和降低开发成本。
图2:PCIe SCSI主机总线适配器(HBA)
案例3:在使用纯PCIe芯片的图形卡上利用反向模式的PCIe到PCI桥建立PCI连接
采用纯PCIe芯片的图形卡面市已经有好几年了,自从PCIe推出后纯PCI的图形芯片即使有也很少推出了。然而,PCI图形卡市场仍然很大,这是因为需要升级视频功能的PCI游戏系统有很大的用户群,而且目前系统中有限的PCIe插槽数量迫使系统集成商将PCI插槽提供给图形卡使用。
因此,最新的图形卡设计在纯PCIe图形芯片前使用了PCI到PCIe桥(见图3)。这样基于PCI的系统就能利用上最新的GPU性能,如DDR2 存储器支持、400+MHz引擎时钟和双链路DVI。由于纯PCI芯片不具备最新的GPU性能,因此要求GPU制造商采用反向模式的PCIe到PCI桥来为传统系统提供PCI连接性。(反向模式桥接是指上游端口是PCI侧,下游端口是PCIe侧。不是所有的PCIe到PCI桥都支持反向模式。PLX公司的 PEX8111和PEX8114均支持前向和反向操作)。
图3:图形卡中的反向桥接
总结
设计师通常很难决定是使用PCIe桥还是开发纯PCIe解决方案。他们需要权衡多种因素,如TTM、开发和制造成本、性能、连接性以及性能增强要求。一旦这些因素确定后,他们就能更好地回答这个问题:用桥还是不用桥?