返回列表 发帖

Fully Buffered-DIMM 内存简介

FB-DIMM技术特性

  FB-DIMM英文全称为“Fully Buffered-DIMM”,又称为全缓冲双列内存模组。FB-DIMM是在普通DDR2内存的基础之上改进而来的,但其与普通DDR内存却有了很大的变化。

1、以串行的方式进行数据传输

  首先,与目前的DIMM采用的是一种“短线连接”(Stub-bus)的拓扑结构不同,FB-DIMM与内存控制器之间的数据与命令传输不再是传统的并行线路,而采用了类似于PCI-Express的串行接口多路并联的设计,以串行的方式进行数据传输。

“点对点连接”(右)与“短线连接(左)”
  在FB-DIMM架构中,每个DIMM上的缓冲区是相互串联的,之间为点对点的连接方式,数据会在经过第一个缓冲区后传向下一个缓冲区,这样,第一个缓冲区与内存控制器之间的连接阻抗就能始终保持稳定,从而有助于容量与频率的提升。

FB-DIMM系统架构图
不过,FB-DIMM的串行总线也有其独到之处:数据的上行线路由于14组线路对构成,一个周期可传输14bit数据,而下行线路却只有10组线路对,一个周期传输10bit数据。
这种不对等设计其实完全是根据实际需要出发,因为不管在任何时候,系统从内存中读取的数据往往比写入内存的数据要多,因此对上行线路的带宽要求也要比下行线路要高,这样不对等设计刚好起到平衡作用,在一定程度上使得读取与写入数据同步。

  同时FB-DIMM所采用的串行接口多路并联的设计还有一个优点,那就是大大增加了抗干扰能力。FB-DIMM所使用的串行总线使用差分信号技术,通过一对线路来表达一下信号,即信号是由“0”或“1”两条线路的电压差来决定,这有点类似于PCI EXPRESS总线。因此此类设计的抗干扰能力要远优于传统的单线传输信号技术,毕竟两条线路之间的电压差是保持在一个相对稳定的水准。

  因此FB-DIMM的总线可以工作在很高的频率之上:以FB-DIMM1.0版标准为例,它可以提供3.2GHz、4GHz 和4.8GHz三种数据传输率,这意味着即使是单通道FB-DIMM系统的也可以提供9.6GB/S、12GB/S和14.4GB/S的惊人带宽。

  注意:由于采用读取与写入不对称设计,因此FB-DIMM的理论读取数据带宽分别为5.6GB/S、7GB/S和8.4GB/S,而写入数据带宽则为4GB/S、5GB/S和6GB/S。

  这仅仅是单通道的情况,实际上FB-DIMM可能构建双通道、四通道或八通道架构,这时所提供的内存带宽是目前的内存所不能比似:最高带宽可以达到86.4GB/S。值注意的是,这些数值并非代表FB-DIMM内存的真正读写效能,因为FB-DIMM所采用的总线是与FB-DIMM模块上的缓冲芯片直接连接的,而不是直接与北桥芯片中的内存控制器相连接。这也意味着FB-DIMM内存模块的芯片的数据传输频率不是与总线频率一致。

  注:目前的DDR内存模块的芯片的数据传输频率是与总线频率一致的,总线频率即是内存真正的读定频率。

2、功能独特的AMB缓冲芯片

  FB-DIMM另一特点是增加了一块称为“Advanced Memory Buffer,简称AMB”的缓冲芯片。这款AMB芯片是集数据传输控制、并—串数据互换和芯片而FB-DIMM实行串行通讯呈多路并行主要靠AMB芯片来实现。

  在FB-DIMM系统中,有两种类型的串行线路:一条是负责数据写入的串行线路(称为Southbound,南区),一条是负责数据读取的串行线路(称为Northbound,北区)。这两条串行线路各由AMB芯片中的“pass-through”和“pass-through & Merging”控制逻辑负责。

  其中南、北区中传输的数据流都是采用串行格式,但AMB芯片与内存芯片仍然通过64bit(注意:位宽并不是固定不变的)并行总线进行数据交据,因此数据之间的串-并格式转换则由AMB中的转换逻辑来实现。同时在AMB中有一个数据总线接口,用来与内存芯片的连接。

  利用AMB芯片,这意味着FB-DIMM并不需要对现有的DRAM芯片作出改动,内存制造商可以直接使用成本低廉的DDR2芯片。尽管采用新型缓冲芯片会增加一些成本,但是这比起制造全新的RAM芯片来说代价要小得多。

  基本上可以这么说,除了时钟信号与系统管理总线的访问(主要与SPD打交道),其他的命令与数据的I/O都要经过位于DIMM上的内存缓冲器的中转。这也许是FB-DIMM为什么叫“全缓冲双列内存模组”的原因。
3、引脚大减,布线更简单

  另外,因为采用了串行传输的设计,使得FB-DIMM的引脚数大为减少!这样改进有什么意义呢?

  首先,FB-DIMM的针脚数量大幅度减少了。单通道FB-DIMM只有69个针脚,其中有20个用于数据,28个用于DIMM,6个用于供电,12个用于接地,还有3个用于时钟和其他用途。和单通道DDR2内存架构的240个针脚相比,FB-DIMM的69个针脚更利于PCB版图设计和布线。在下面的图片中,左边是单通道DDR2,右边是双通道FB-DIMM,可以看出FB-DIMM的PCB版图设计和布线更易于实现。

FB-DIMM主板的布线(右)明显要比DDR2主板(左)的要简单得多
  而且FB-DIMM还能够使用长度不相等的线路,这一特性同样可以简化电路板设计。内存控制器和缓冲可以对线路长度不相等造成的信号传输时差进行补偿,电路设计师们不用为了实现线路长度相等而采用奇怪的布线方式了。

  在初始化时,内存控制器会测量每个针脚上的信号计时,通过延迟最快的信号来实现和最慢的信号之间的同步。最主要的一点是双通道的FB-DIMM配置可以在两层PCB上实现,包括电源线路在内。而单通道的DDR2需要3层PCB板来实现同样的事情。
更多的PCB层数意味着更高的成本。FB-DIMM能够以更少的PCB层数实现相同的带宽,或者以相同的PCB层数实现高得多的带宽。但不要忘记,内存能够支持的最大容量也是一个很重要的指标。

  对于服务器来说,内存容量往往比成本更为重要。而现在每个FB内存通道可以支持8个DIMM插槽,从英特尔在IDF上发布的数据来看,一款6通道、针脚数420针的FB-DIMM内存系统可以实现了4倍于DDR2-800的带宽(40GBps对10GBps),并且能够达到48倍于DDR2的最高容量。

FB-DIMM与DDR2之间的比较
  480针金手指的双通道DDR2解决方案和420针6通道FB-DIMM方案,后者明显更具有吸引力,要知道FB-DIMM采用的内存芯片和DDR2-800是完全一样的。

4、可靠性更强

  FB-DIMM相对目前的内存其运行可靠得到很大增加。英特尔甚至宣称它们已经做到让FB-DIMM在100年内出现少于一次的silent data error(无记载数据错误)。

  在高容量模组上,内存芯片数量很多,而且在需要大容量内存的工作场合,内存模组的安插数量也是很多的,这使命令与寻址信号的稳定性受到了严峻考验。为此服务器内存(Reg-DIMM)往往需要加入一个ECC功能:通过增加额外的寄存器来稳定命令/地址信号,隔离外部干扰,从而增加运行的稳定性。

  在工作时,命令地址信号会先送入寄存器进行“净化”并进入锁存状态,然后再发送至内存芯片,芯片中的数据则不经过寄存器而直接传向北桥。不过ECC功能有一个缺点:由于要经过中继传输,所以内存操作的时序也会因此而增加一个时钟周期。而以上问题在FB-DIMM中得到了完善解决。

  在FB-DIMM中,指令和数据都进行完全的CRC循环冗余校验,远比目前的ECC纠错方法要先进。而且英特尔在FB-DIMM架构引入了的“Bit Lane Fail Over Correction”功能,利用此功能,当一个位宽的通道出现故障后,它就会被从系统中排除掉,即让出现故障的内存通道停止运行。此时内存控制器然后会调整CRC设置以相应降低所使用的内存带宽,这样即使一块芯片,一个DIMM插槽甚至是一条内存通道出现故障并不会造成死机,甚至不会降低内存带宽。这无疑大大增加了内存子系统的稳定性。
5、美中不足:高延迟!

  不过FB-DIMM也有美中不足之处:延迟较高。?通过Intel的模拟分析表明,FB-DIMM在低带宽应用时,潜伏期会比DDR2系统长。FB-DIMM延迟的数量为3—9纳秒,每增加一个节点还会另外增加2~6纳秒。FB-DIMM延迟之所以之主要由于两方面造成的:

  一方面是由于采用串行的方式进行数据传输,存在串/并转换的过程需要占用一定的时钟周期,这也被称为“串行延迟”。总体上来说,串行延迟是FB-DIMM架构采用的数据传输方式所特有的,是不可避免的,无论如何都会出现。在FB-DIMM架构中,理论上可以通过提高工作频率来减少串行延迟的时间,而DDR2、DDR3内存的延迟时间却是随着频率提升而增加的。而且从XDR架构来看,这种串行延迟也不会对实际性能造成很大的影响!

  另一方面是由于一块AMB缓冲芯片,信号必须先被缓冲读取,然后再被执行或者传递。这就带来一个缓冲延迟的问题。针对这一缺点,英特尔给出的解决办法是“信号无需存储,立即转发”。数据将在缓冲内部通过特殊的快速通道进行传输。这将在很大程度上减小存储/转发信号带来的延迟。

  此外,FB-DIMM还能够在不同的通道上对内存进行读写,能够实现标准的共享总线架构所不能实现的一些操作。各个内存插槽可以独立运作,一部分用于读取,另一部分用于写入,这样就没有因为切换读取和写入动作所造成的延迟了。最后一点是在FB-DIMM架构中,DRAM和内存通道是同步运行的。当内存和内存通道不同步运行时,延迟也会增加,事情也会变得更为复杂。这样的复杂性会为厂商带来难题,并且会降低内存的性能。

FB-DIMM架FB-DIMM与DDR的延迟/带宽坐标图:带宽越高,FB-DIMM的延迟越低
  虽然FB-DIMM延迟较高,但是这些延迟都可以通过技术手段从架构上得到解决。而且随着容量与带宽需求的增加,高延迟反倒渐渐成为了FB-DIMM的优势,而且带宽越大,这就优势也就越明显:在同时进行读取和写入操作时,两条双通道DDR2一次只能做一个操作,而两条FB-DIMM内存至少可以组成4个通道,这意味者带宽将增加一倍,而且FB-DIMM内存可以在一个时间周期内执行8个操作,例如4个读取操作和4个写入操作。

  而且当单条模组的带宽达到4GB/S时,DDR2内存的延迟时间与FB-DIMM是一样的,此后随着带宽的增加,DDR2的延迟会渐渐增加,而FB-DIMM的延迟却呈下降的趋势。这也从别一方面证明FB-DIMM非常适合用于高端系统的内存体系。
除以上特点外,FB-DIMM规格中还加进了对直立主板的支持。需要在服务器中将主板竖置的用户将会对此有所需要。尽管这一支持被加入到规格中,但由于FB-DIMM架构支持的布线长度大为增加,用户很可能可以避免将主板竖置。FB-DIMM规格中还具有逻辑分析界面,用户可以看到内存通道的详细情况而不用中断其操作,这个特性对于调试主板非常有用。

FB-DIMM内存模块

返回列表