《【2017年整理】FB-DIMM》由会员分享,可在线阅读,更多相关《【2017年整理】FB-DIMM(6页珍藏版)》请在金锄头文库上搜索。
1、FB-DIMM(Fully Buffered-DIMM,全缓冲内存模组)是 Intel 在 DDR2、DDR3 的基础上发展出来的一种新型内存模组与互联架构,既可以搭配现在的 DDR2 内存芯片,也可以搭配未来的 DDR3 内存芯片。FB-DIMM 可以极大地提升系统内存带宽并且极大地增加内存最大容量。FB-DIMM 技术是 Intel 为了解决内存性能对系统整体性能的制约而发展出来的,在现有技术基础上实现了跨越式的性能提升,同时成本也相对低廉。在整个计算机系统中,内存可谓是决定整机性能的关键因素,光有快的 CPU,没有好的内存系统与之配合,CPU 性能再优秀也无从发挥。这种情况是由计算机原理
2、所决定的,CPU 在运算时所需要的数据都是从内存中获取,如果内存系统无法及时给 CPU 供应数据,CPU 不得不长时间处在一种等待状态,硬件资源闲置,性能自然无从发挥。对于普通的个人电脑来 说,由于是单处理器系统,目前的内存带宽已经能满足其性能需求;而对于多路的服务器来说,由于是多处理器系统,其对内存带宽和内存容量是极度渴求的,传统 的内存技术已经无法满足其需求了。这是因为目前的普通 DIMM 采用的是一种“短线连接”(Stub-bus)的拓扑结构,这种结构中,每个芯片与内存控制 器的数据总线都有一个短小的线路相连,这样会造成电阻抗的不继续性,从而影响信号的稳定与完整,频率越高或芯片数据越多,
3、影响也就越大。虽然 Rambus 公司所推出的的 XDR内存等新型内存技术具有极高的性能,但是却存在着成本太高的问题,从而使其得不到普及。而 FB-DIMM 技术的出现就较好的解决了这 个问题,既能提供更大的内存容量和较理想的内存带宽,也能保持相对低廉的成本。FB-DIMM 与 XDR相比较,虽然性能不及全新架构的 XDR,但成本却比 XDR 要低廉得多。与现有的普通 DDR2 内存相比,FB-DIMM 技术具有极大的优势:在内存频率相同的情况下目前能提供四倍于普通内存的带宽,并且能支持的最大内存容量也 达到了普通内存的 24 倍,系统最大能支持 192GB 内存。FB-DIMM 最大的特点就
4、是采用已有的 DDR2 内存芯片(以后还将采用 DDR3 内存芯片),但 它借助内存 PCB 上的一个缓冲芯片 AMB(Advanced Memory Buffer,高级内存缓冲)将并行数据转换为串行数据流,并经由类似 PCI Express 的点对点高速串行总线将数据传输给处理器。与普通的 DIMM 模块技术相比,FB-DIMM 与内存控制器之间的数据与命令传输不再是传统设计的并行线路,而采用了类似于 PCI-Express 的串行 接口多路并联的设计,以串行的方式进行数据传输。在这种新型架构中,每个 DIMM 上的缓冲区是互相串联的,之间是点对点的连接方式,数据会在经过第一个缓 冲区后传向
5、下一个缓冲区,这样,第一个缓冲区和内存控制器之间的连接阻抗就能始终保持稳定,从而有助于容量与频率的提升。用于数据中转、读写控制的缓冲控制芯片 AMB 并非只是一枚简单的缓冲芯片,它主要承担以下三方面的功能:1)负责管理 FB-DIMM 的高速串行总线。缓冲芯片与北桥芯片(或者 CPU)中的内存控制器连接,让数据在内存缓冲与控制器之间传送,承担数据发送和接收的指派任务,这包含一组数据读取的 14 位串行通路和一组用于数据写入的10 位通路。2)实现并行数据流与串行数据流的翻译转换工作和读写控制。缓冲芯片从内存中读取出来的原始数据原本都为并行格式,它们在通过高速串行总线发送出去之前就 必须先转换为
6、对应的串行数据流,而这个任务也必须由缓冲芯片来完成,反之,从内存控制器传来的串行数据流要转成指定的并行格式,然后才能写入到内存芯片 中,缓冲芯片自然也要承担这个任务。3)承担多个 FB-DIMM 模组的通讯联络任务。如果在一个内存通道中存在多条 FB-DIMM 模组,那么各个 FB-DIMM 模组间的数据都是通过缓冲芯片来传递、转发的。缓冲芯片要始终承担着数据传输和读写的中介工作,不同的 FB-DIMM内存储模组必须通过这枚芯片才能交换信息。FB-DIMM 系统示意图因此,每个内存芯片不再直接和内存控制器进行数据交换。实际上,除了时钟信号和系统管理总线的访问,其他的命令与数据的 I/O 都要经
7、过位于 DIMM上的 AMB 的中转,从而消除了传统 DIMM 模组“短线连接”的弊端。不难看出,缓冲芯片 AMB 实际上是 FB-DIMM 的大脑,它承担所有的控制、传输和中转任 务。使用串行总线作为传输媒介,FB-DIMM 便顺理成章拥有跨越式的高接口带宽。根据 1.0 版标准定义,FB-DIMM 模组的串行总线有 3.2GHz、 4.0GHz 和 4.8GHz三种频率规格,而每条模组的有效位宽为 24bit,所对应的接口带宽便是9.6GBps、12GBps 和 14.4GBps,远 远超过了现有的 DDR2 内存。必须注意的是,FB-DIMM 的接口带宽与实际读写带宽其实是两个概念,前者
8、所指的只是每个模组串行总线的最高带宽,它在含 义上类似 SATA 接口SATA 的总线带宽达到150MBps,但这并不是指串行 ATA 硬盘能 达到这个速度,代表的只是带宽的最高值。同样,FB-DIMM 的接口带宽同样如此,模组的实际性能仍取决于内存芯片规格和模组位宽设计。如果采用 DDR2-533 芯片、64bit 位宽设计,那么这条FB-DIMM 的有效带宽仍然只有 4.2GBps,同现有的 DDR2-533 内存完全一样。FB- DIMM 之所以能拥有高性能,关键在于串行传输技术让它摆脱了并行总线难以实现多通道设计的问题,使得在计算机中引入六通道设计成为可能,借此达到传统 DDR2 体系
9、难以想象的超高带宽,这就是 FB-DIMM 的真正奥秘所在。不过,引入缓冲设计也会产生一个新的问题。数据在传输过程中需要经过缓冲和转换,不可避免需要花费额外的延迟时间,对性能产生负面影响。但随着工作频率的提升,这个缺陷会变得越来越不明显。为了保持信号稳定,DDR2 内存的延迟时间将 随着工作频率的提高而快速增加,而 FB-DIMM 的延迟时间增幅平缓,所以虽然现在 FB-DIMM 延迟较高,但当单条模组的带宽达到 4GBps 左右 时,FB-DIMM 与 DDR2 内存延迟时间相当,超过这个临界点之后,DDR2 内存的延迟时间将明显长于 FB-DIMM。换句话说,FB-DIMM 系统不 仅具有
10、更高的数据带宽,而且延迟时间更短、反应速度更快。FB-DIMM 与 DDR2 延迟对比 串行总线设计是 FB-DIMM 赖以拥有高效能的基础。实际上,Intel 并没有另起炉灶从零开始设计,而是直接沿用了许多来自于 PCI Express 的成果,其中最关键的就是使用差分信号技术(Differential Signaling)。 现有各种并行总线都是以一条线路来传输一个数据信号,高电平表示“1”,低电平表示“0”,或者反过来由低电平表示“1”,高电平表示“0”。单通道结构 的64bit 内存需要使用 64 条金属线路来传输数据,双通道就需用到 128 条线路。当数据在线路传输时,很容易受到电磁
11、环境的干扰,导致原始数据出现异 常,如高电平信号电压变低,或低电平的电压变高,这些干扰都有可能让接收方作出错误的判断,导致数据传输失败。过去业界曾为这个难题大伤脑筋,当初硬盘数 据排线从 40 针提高到 80 针细线(增加 40 根地线)就是为了降低传输干扰,但直到串行技术引入后问题方告解决。与传统技术迥然不同,差分信号不再是以单条 线路的高低电平作为“0”和“1”的判断依据,而是采用两条线路来表达一个二进制数据数据究竟为“0”还是“1”取决于这两条线路的电压差。这样,即使 受到严重的外来干扰,导致两条线路传输的电平信号发生较大范围的电压波动,但它们之间的电压差依然可以保持相对稳定,接收方便能
12、够作出正确的判断。因此, 差分信号技术拥有非常强的抗干扰能力,但因它需要占用两条线路,很难被引入到并行总线技术中,只有针对服务器应用的 SCSI 总线是个例外。 FB-DIMM 借鉴 PCI Express 技术的第二个地方,就是其串行总线也采用了点对点结构。目前,DDR 体系的并行总线无法在同一时刻同时发送和接收数据,二者根据指令轮流进 行。然而 FB-DIMM 却可以在同一时刻同时发送和接收数据,奥秘在于它拥有两个串行通路,一个用于数据发送,一个用于数据接收。与之对应,FB- DIMM 的缓存芯片有专用的发送控制逻辑和接收控制逻辑,数据读出操作和写入操作可在一个周期内同步进行。这实际上将内
13、存系统的理论延迟时间缩短了一半, 弥补了缓冲处理所造成的损失。较为特殊的是,FB-DIMM 的数据发送总线与接收总线是不对等的,发送总线一共有 14 个线路对,一次向内存控制器发送 14bit 数据。而接收总线采用 10 位设计,每次只能够接收 10bit数据。笼统地说,单通道的 FB-DIMM 模组就是 24bit 设计。这种不对等设计之 前没有先例,但它却十分符合内存系统的客观实际。在大多数情况下,CPU 从内存中读出的数据总是远远多于写入到内存的数据,与之对应,读取总线带宽高于写 入总线的设计方案科学合理,而且十分经济。 按照 Intel 的 FB-DIMM 规范,每个 DIMM 只需要
14、 69pin 或 70pin,比普通DDR2 的 240pin 要少得多,这有利于实现多通道设计。例如普通的 DDR2 系统需要 240 条线路,而且线路长度必须保持严格一致,这导致了设计难度的加大,而且主板 PCB 上的空间被密密麻麻、设计极其复杂的蛇形线路占据,没有任何空余的地方;而采用 FB-DIMM 的话,即使是六通道设计,也只需要 420 条线路,比双通道的 DDR2 还要少得多,大大简化了主板设计,并且工作更加稳定。 高性能并非 FB-DIMM 的唯一优点,对服务器系统来说,FB-DIMM 另一个关键的优点是它可实现超大容量。每个 FB-DIMM 内存通道都可以最多支持 8 个DI
15、MM(普通 DDR2 每个内存通道只能支持 2 个 DIMM),一个服务器系统最多可以实现 6 个通道,装载 48 条 FB-DIMM 内存,而每条 FB- DIMM 内存的最大容量达到 4GB,这样该系统可容纳的最高容量就达到了 192GB。这么大的容量对于普通服务器没有什么意义,但对于高端系统乃至超级计 算机,FB-DIMM 带来的容量增益就非常明显。要将如此之多的 FB-DIMM 内存插槽放置在主板上肯定是个大麻烦。显然,若采用现行内存槽方案,将导致主板 PCB 面积难以控制,为此,Intel 为 FB-DIMM 系统定义了全新的连接模式,通过内存扩展板来实现多模组的连接。主板上提供 6
16、 个内存扩展槽,每个内存扩展槽对应一个通道。每个内存扩展槽上 可直接插入 FB-DIMM 模组或者是内存扩展板,每个内存扩展板上又有 8 个 FB-DIMM 内存插槽,只要你愿意,可以将 8 条 FB-DIMM 模组插在扩展板 上,然后再将该内存扩展板插在主板上,依此类推,完成 6 通道、48 条内存的安装。这种方法充分利用了机箱内部空间,巧妙解决了多模组安装的难题,构建高效 能系统就显得更具可操作性。 单条 FB-DIMM 与主板连接内存扩展板连接示意图值得注意的是,FB-DIMM 内存模组的金手指仍有 240 个,与普通 DDR2 内存相同,区别只是缺口的位置不同而已。这种设计其实也是为兼容现有生产设备 之故,FB-DIMM 的有效针脚只有 69 个或 70 个,我们可以从 FB-DIMM 内存模组实物图中看到,只有正面左侧的金手指有连接到缓冲控制芯片的线路, 其余位置的金手指并没有连接线路,只是做做样子而已。也许很多人会认为,直接设计为 69 个或 70 个金手指会更经济一些,但这样做就必须对现有的生产设备作 较大的调