先进服务器应用的内存解决方案

本文作者:admin       点击: 2007-07-11 00:00
前言:
今天,内存对系统效能的影响,扮演着比以往更具关键性的角色。由于信息科技对系统反应速度、容量及复杂性的需求日渐提高,造成对系统功能要求也更加严苛,已非仅限于对处理器速度的要求。一个性能良好的系统所需具备的数项特性中,具备快速存取大量存储器的能力至关重要。

内存性能对于桌上型计算机、路由器,甚至是个人数字助理(PDA)已是基本要求,对服务器与工作站而言,更为重要。由于需要处理密集运算工作量及管理大量数据,系统就必须配置最先进的内存。内存一定程度的容量与速度,可以决定性地影响所配置的系统性能,甚至会影响该系统在市场上的成败。
也就是说,设计服务器与工作站平台内存子系统的厂商,即将面临迫切的挑战。随着系统频率的提升,以及DDR2与DDR3 DRAM技术支持更快的内存速度,尤其在推进到800 MHz及更高的速率时,内存容量便成为高端系统的设计考虑重点。

系统开发人员会根据不同的需求,开发现有和新出现的内存,以满足开发设计的需要。采用标准DRAM的缓冲式DIMM(Buffered DIMMs - Dual In-line Memory Modules, 双列直插式内存模块),因为在效能及供货与价格方面较具稳定性的优势,所以比非缓冲式与专属应用设计的同类产品具有更广泛的采用。现在,缓冲式(Buffered)DIMM主要有两种类型,寄存式DIMM(R-DIMM)与最新的全缓冲(Fully Buffered)DIMM(FB-DIMM)。对这些内存解决方案的发展过程以及所具有的特性与功能的了解,将能够协助高效能服务器与工作站设计开发者获得更多信息,以提供决策上的参考,并让他们得以实现最具竞争力的系统效能目标。

先进内存技术的发展

自10年前当系统开始需求64 位数据通道以来,内存技术经历了许多重大创新技术发展。自从那时开始,DIMM已经成为主流的内存传输格式,同时内存技术与功能增强也不断地发展,以达到与系统带宽和速度发展需求保持同步。
一开始,处理器与内存速度是一前一后依序处理。举例来说,在JEDEC PC66标准下,处理器与内存总线都是以66 MHz运行,到了九十年代后期,大约是采用PC133标准的时期,处理器的处理速度便超过了内存子系统的速度。尽管内存处理速度未来也会持续落后于处理器的速度,但是这种差距可迫使能缩短这种差距的创新内存解决方案的出现。

在DRAM芯片中的SDRAM技术已经采用增加组件速度的创新方式,以应对上述的压力。(图1)。约在2001年,双倍数据传输率 DDR(Double Data Rate)SDRAM技术成熟,具备了可在上升和下降时钟边缘同时传输数据的新能力,有效地将前内存子系统的时钟速度提高一倍。该技术使内存时钟速率可达200 MHz,而内存传输率高达400 MHz。后来,系统要求DDR突破可达的400 MHz上限,DDR2便应运而生。具有双倍数据速率的DRAM通过加倍I/O时钟速率,并降低电压至1.8v以达到低耗电量等强化的接口性能,进一步提升可达到的时钟频率。当DDR2又达到了800 MHz传输速率的限制后,约在2006年年底左右,DDR3又顺应而生。

在SDRAM技术发展的同时,片外(off-chip)功能也渐渐在内存架构上扮演更为重要的角色。DIMM模块最初只是一块电路板,最多组装18个SDRAM。这个所谓的非缓冲(unbuffered)配置足以满足当时的需要,后来随着越来越高的数据传输率和未经检视过的数据量开始超过内存总线可以承受的容量,需要牺牲系统时钟和信号完整性时,该非缓冲配置已经不能够满足当时的需求了。
为了克服这些问题,只好采用缓冲器利用电子方式隐藏指令/地址及时钟信号,这时寄存式 (Registered) DIMM应运而生。R-DIMM与SDRAM可成为一个锁相环 (PLL)和至少一个或多个缓存器组成的芯片组。PLL可以复制时钟信号,寄存式缓存器可以缓冲地址及指令信号,从而可以减轻内存控制器上的负担,在增加更多内存时也可增强系统的稳定性。仅以信号时钟周期的延迟和每个模块稍贵的成本作为代价,R-DIMM就可以提供更高的存储密度,因为其降低了时钟的负载,指令和地址可支持更多的SDRAM(可高达36个);或者采用非缓冲式 DIMM 就有可能使容量加倍。
  
内存容量问题

R-DIMM是一种可在内存时钟速度高达200MHz~400 MHz下运作的内存架构。然而现在,内存容量却成为限制的因素。在高速运算时,DIMM会对系统造成庞大的电子负载,如电容、电感与电阻,从而破坏信号的完整性并降低系统性能。

如此一来,在高端系统中每个内存通道所能支持的DIMM数量便会严重地降低。采用DDR333模式,服务器架构中的每个通道可支持四组DIMM;而在DDR1-400与DDR2-400模式下,DIMM的插槽降到只有3个。更甚之,如果是在DDR2-667/800模式下时,每个内存通道只能有两个插槽。

因此,在充分利用DDR先进技术的优势以创造高性能计算系统的同时,却存在内存速度迅速增加,但每个通道可支持的容量却没有随之增加的问题(图2)。如果可以接受每个通道具有240个引脚,在平台架构上增加更多内存通道的可能性便无庸置疑。但事实上,由于成本考虑的压力,每个系统设计都希望降低内存通道数量,而非增加。所以,只好依靠先进的内存技术来克服容量需求的差距。

架构转换

传统内存子系统设计的一部份,采用并行总线(parallel “stub” bus) 的方式,现在也开始因高速数据传输率的需求而受到压力。内存通道上的每个模块都是通过所在模块的总线连结到内存控制器。当内存密度变的越来越高时,内存控制器便会超载,便容易发生错误与数据流延迟。数据流速度愈快,就会产生更多错误,最终将迫使设计工程师只好在二者中选择其一:内存容量较小但速度快,或是容量较大但内存较慢。但如果是世界级高端计算的系统设计,两种选项均不是最恰当的。

如果还是希望利用DDR2与DDR3技术强化传输速率的特性,但同时又要能够持续增加内存容量,就必须对内存架构进行根本的改变,彻底放弃传统并行总线的设计。随着PCI Express、Serial RapidIO (sRIO)、SCSI与ATA的推出,内存子系统目前正在尝试采用串行技术(serial technology) 来提高性能(图3)。如果不采用并行总线,让内存子系统以串行的方式连接到处理器,内存控制器的超载问题以及内存架构需要设计很多连结的问题都可因此缓解。将内存子系统以链状的方式配置,通过通道中依续排列的DIMM与主控制组件连结,如此一来,每个组件都依序、点对点连结,就像仅有单线的电子负载,即可免除在高内存密度下会瘫痪并行总线功能的错误与延迟的产生。理论上,这种新架构可以容许无限量DIMM的连结,对主控组件而言仍只有一条负载,从而便可完全解决内存容量限制的问题。

进入FB-DIMM技术

这种采用串行内存子系统的内存技术被称为全缓冲式DIMM(FB-DIMM)。不同于之前的R-DIMM,FB-DIMM配置了DDR2或DDR3 SDRAM内存模块,以及一种可管理数据流量的缓冲组件。不同于R-DIMM,FB-DIMM的缓冲功能不仅对指令/地址和时钟信号,也对数据流量进行缓冲—即对所有输入或输出DIMM的信号及数据都进行缓冲。串行式FB-DIMM经由70条布线连接到主控组件,比较平行汇流架构每个通道需要240条布线,不仅可降低负载,也可简化系统应用设计并降低成本。

FB-DIMM架构中的缓冲组件是一种先进的内存缓冲器,简称AMB,AMB是一种具有丰富特性的接口组件,以双向串行总线的方式与主控制器互动。因为DRAM在本质上是以并行方式运作,但是主控制组件则是采用串行的沟通方式,所以在每个DIMM上需要一个AMB协助主控制组件与DRAM及下端的FB-DIMM之间进行信息的转译。AMB实质上就如同一个从属内存控制器,主要分担主控制组件在运算方面及因为要处理大量与不定量内存而产生的相关负载量。
最重要的是,FB-DIMM内存架构排除了高带宽平台所需要的容量限制(图4)。以采用DDR2-533 MHz等级的模块为例,FB-DIMM的技术可以延展内存信道容纳多达八个DIMM,而如果是并行总线的话则仅能使用两个模块。若采用4 GB的DIMM,内存容量可以从8 Gb增加到32 Gb,内存频宽也可以比DDR2-400 DIMM增加33%,也因为每个信道的模块数量限制为8个,所以串行链中的延迟已经不是问题了。

评估可选用的架构
  
R-DIMM与FB-DIMM这两种具缓冲功能的DIMM架构,都是现在服务器与工作站内存子系统设计选用的解决方案。至于哪一个最适用于所采用的系统设计,则需要包括设计需求与商业等多方面的考虑。

对不需要海量存储器的系统而言,R-DIMM架构的性能应该足以满足,且成本比FB-DIMM低。若对内存的需求增加,则选择会比较复杂。以单一模块成本而言,FB-DIMM相对R-DIMM的成本较高。然而,如果要增加以R-DIMM为架构的内存容量,在不增加插槽数的情况下,就必须换掉成本较低的配置512 Mb DRAM的DIMM,改用配置1 Gb 或2 Gb DRAM芯片而较昂贵的DIMM 。相对的,若采用FB-DIMM的架构,系统可以设计保留大量的插槽空间,以便可以用最具成本效益的DRAM进行最适宜的配置。整体来说,FB-DIMM架构的系统,表面上FB-DIMM本身似乎较贵,但需要扩充时,却比较便宜。成本考虑的关键应该是整体系统的所有成本,而不是只单一评估DIMM的成本。

另一个考虑则是风险因素,如同先前所提到的,如FB-DIMM与R-DIMM这类有缓冲功能的DIMM,使用的是已商用化的DRAM,不会有供货风险,价格也比较有竞争性。R-DIMM架构的技术比FB-DIMM成熟,可供一些系统设计考虑。仅管如此,FB-DIMM架构自2004年初即开始发展,且受到领先DIMM制造商的大力支持,突出的主客观条件促使其很快地也会发展为成熟的技术。最后要考虑的因素,是供应链的整合,尤其对高端系统来说,设计的成功与否很大因素归因于是否与有信誉的供货商合作及其所提供的价值。
       
IDT:提供的内存接口解决方案

IDT提供先进的内存接口产品,可支持R-DIMM与FB-DIMM架构,适合于工作站与服务器所需的应用设计。提供这些先进的内存产品充份展现IDT长期在DIMM市场的领导地位及对该市场的承诺。

IDT是第一家针对DDR2寄存式DIMM (R-DIMM)架构推出符合JEDEC规范的PLL/缓存器芯片组的公司,IDT的缓存器可以驱动指令/地址信号,并支持1:1(25个输入位)与1:2(14个与28个输入位)的组合,让系统设计师只要用单个组件便可以进行多种DIMM的配置组合。IDT的芯片组也包含了一个1:10 PLL的时钟驱动器,可将从主控组件传入的时钟与DIMM上的SDRAM同步化。目前,IDT为市场上第一家支持R-DIMM高达800 MHz传输速率的公司。

IDT也提供符合JEDEC规范的先进内存缓冲器(Advanced Memory Buffer),以支持FB-DIMM架构的解决方案。IDT的 AMB整合在FB-DIMM上,主要处理系统中每个DIMM的数据的缓冲、收集与分配。作为下一代高速服务器与工作站的必要建构模块,IDT已经建立了在AMB技术的市场领导地位,除了是第一家可以量产AMB的供货商之外,也是2004年第一家提供AMB产品样品的厂商,同时也是第一家可以提供系统展示的公司。IDT 的AMB是一个功能完整、可同时支持ECC和CRC、具备故障自动重启的不间断连结,以及跨通道镜像与热插拔能力的器件。
       
结语

 设计人员必须依据其所作特定系统的需求与商业考虑,选择采用既有的技术(如R-DIMM/PLL与缓存器),或采用新的架构(FB-DIMM/AMB)。无论哪种选择,必须有类似像IDT所提供的通过相关测试并证实可实用的解决方案,才能让设计开发者有能力可以开发出满足现今先进应用中的种种需求。