并-串数据互转是缓冲控制芯片的又一个关键点。对于数据发送的北区,就是将从内存中读取出来的并行数据预先转换为串行数据流,它是由缓冲芯片的“串行转换逻辑(serializer)”来完成的。而对于北区接收到的数据,则是由“并行转换/解码逻辑(De-serializer &Decode Logic)”处理的,首先将串行数据转为对应的并行格式,然后将数据流包含的写入命令和地址信息进行解码,并据此完成写入操作。
毫无疑问,数据读取和写入操作的最终对象都是FB-DIMM模组内的内存芯片。我们在缓冲控制芯片的逻辑中发现,缓冲芯片与内存芯片的通讯完全是由“数据总线接口(Data Bus Interface)”进行统一掌管,它也是二者之间最主要的连接点。在读取数据时,内存模组中传出的并行数据经过数据总线接口后指派给上面的“串行转换逻辑”,得出的串行数据流被发送给内存控制器。而进行写入操作时,并行化后的数据也必须通过这个接口,再写入到指定的区域。
显然,它承担的只是简单的转换控制工作而已,但从中我们可以看到,FB-DIMM模组芯片采用多少位的设计无关紧要,其实Intel可以将它设计为64bit,升级更为平滑,也可以设计为128bit模组来获得更高的性能,在现有技术条件下实现这样的目标可谓是轻而易举,而我们前面推测FB-DIMM系统的效能其实也都还是保守数字。
到此为止,整套FB-DIMM系统便能轻松运转起来了,在上述分析中不难看出,该缓冲控制芯片的结构并不复杂,功能单元相对简单,没有多大的设计难度,更多体现的是一种理念的创新。根据1.0版规范,该枚芯片将采用类似BGA的封装技术,芯片整体尺寸为24.5×19.5×2.15毫米,很容易便能安装到内存的PCB板上。从样品图中可以看出,该芯片的核心面积很小,量产后的制造成本很低。其底部一共有多达655个球状焊接信号点,分布井然有序。
六、FB-DIMM三大优点
在多通道设计上,FB-DIMM非常灵活,你可以使用单通道、双通道、四通道或者是六通道,几乎可以同Rambus公司的XDR内存相媲美,其中关键便是串行总线设计。为了更好说明这一点,我们不妨引入DRR2内存来作为对比。
根据前面所述,大家可知每条FB-DIMM为24位,但它是由24条高速串行通路组成,不存在信号同步化的问题,对应主板PCB的线路也根本不必讲究长度一致,设计难度得到有效控制。从线路数量来考虑情况也与之类似,因使用差分信号技术,传输一个数据需要占用两条线路,那么单个FB-DIMM通道就一共需要48条数据线路,再加上12条地线、6条供电线路和3条共享的线路,线路总数只有69条。与之形成鲜明对比的是,一条DDR2模组总共需要用到240条线路,足足是FB-DIMM的三倍还多。而且DDR2内存的数据线路必须保持严格一致,设计难度较大。
从对比中大家可以看到二者的明显差别,即便是单通道DDR2系统,主板PCB上的空间被密密麻麻、设计极其复杂的蛇形线路占据,没有任何空余的地方。此外,数据线路和地线总共要占据两层PCB,供电线路又要占据一层,资源占用比较厉害。而图5右侧的双通道FB-DIMM方案就简单了许多,传输线路只占据极少的一部分PCB区域,总共只要两层PCB即可,差异极为明显。
目前,业界已很好地掌握了双通道DDR/DDR2技术,PCB设计人员可以在北桥芯片/CPU与内存DIMM槽间的空位设计出480条连接线路,至少其中的128条数据线需要保持严格一致。那么,FB-DIMM的多通道设计就变得非常自然了,六通道也只需要使用到414条连接线路,这些线路几乎都不需要保持严格一致的长度,实现成本比双通道DDR/DDR2要低得多。
高性能并非FB-DIMM的唯一优点,对服务器系统来说,FB-DIMM另一个关键的优点是它可实现超大容量。每个FB-DIMM通道都可以最多串联8条内存,一个服务器系统最多可以实现6个通道,装载48条FB-DIMM内存,而每条FB-DIMM内存的最大容量达到4GB,这样该系统可容纳的最高容量就达到了192GB。这么大的容量对于普通服务器没有什么意义,但对于高端系统乃至超级计算机,FB-DIMM带来的容量增益就非常明显。
要将如此之多的FB-DIMM内存插槽放置在主板上肯定是个大麻烦。显然,若采用现行内存槽方案,将导致主板PCB面积难以控制,为此,Intel为FB-DIMM系统定义了全新的连接模式,通过一块扩展板来实现多模组的连接。
我们先来看看最基础的FB-DIMM,如图所示,二者分别为单、双条FB-DIMM的连接形式,连接方法与现有DDR内存没甚么不同,区别只是在于特殊的总线连接而已,内存控制器通过高速串行总线与各条FB-DIMM模组的缓冲控制芯片连接,但如果要为这套系统安装数十条FB-DIMM模组,那又该怎么办?
FB-DIMM 1.0标准对此作出了明确的定义。主板上提供6个扩展槽,每个槽对应一个通道。每个扩展槽上可直接连接FB-DIMM模组或者是内存扩展板,每个扩展板上又有8个FB-DIMM连接槽,只要你愿意,可以将8条模组插在扩展板上,然后再将该内存扩展板插在主板上,依此类推,完成6通道、48条内存的安装。这种方法充分利用了机箱内部空间,巧妙解决了多模组安装的难题,构建高效能系统就显得更具可操作性。
七、FB-DIMM模组的物理规格
FB-DIMM 1.0标准对模组的物理规格作出了相当详细的定义,具体包括模组尺寸、金手指设计以及相关的电压参数等。在这些方面,FB-DIMM并没有太出奇的地方,Intel更多考虑到与现行生产设备的兼容问题,如FB-DIMM模组的尺寸为133.5毫米×30.5毫米,同现有的服务器内存完全一样。
模组中可以容纳9颗、18颗或36颗DDR2/DDR3规格的内存芯片,其中18颗芯片设计为标准方案—PCB的背面容纳10颗、正面为8颗,正面中间位置留给缓冲控制芯片。如果要采用36颗芯片的高容量方案,估计要使用芯片叠加技术才行。另外,FB-DIMM模组的金手指仍有240个,与DDR2内存相同,区别只是缺口的位置不同而已。
这种设计其实也是为兼容现有生产设备之故,FB-DIMM的有效针脚只有69个,我们可以从下图的FB-DIMM模组中看到,只有正面左侧的金手指有连接到缓冲控制芯片的线路,其余位置的金手指并没有连接线路,只是做做样子而已。也许很多人会认为,直接设计为69个金手指会更经济一些,但这样做就必须对现有的生产设备作较大的调整,花费的成本反而更高。