前途未卜的Rambus DRAM 陈寅初 2000年 第16期   Rambus DRAM是随着英特尔i820芯片组的推出而使业界为之注目的,英特尔曾经一度将它作为配合下一代处理器使用的高速内存,但由于RAMBUS高昂的价格以及其他内存制造商必须支付高额的授权生产费用,RDRAM的前景并不为人们所看好。不过索尼最近发布的PlayStation2中,每台游戏机都使用32MB的RDRAM,这似乎给RDRAM再次注入了激活市场的兴奋剂。然而更强劲的DDR SDRAM标准的出台,RDRAM还能有多大的优势呢? #1 高带宽不再是优势   RDRAM是整合了高数据传输速率内存芯片、内存连接界面、发信号协议以及使用拓扑布局彼此互连的第三代高速内存技术,它的优势在于高带宽,在每只RDRAM引脚上,数据流都能以高达800M/s的速率传输。从这一点来看,它单引脚传输速率是目前PC100 SDRAM的8倍。在i820芯片组推出时,英特尔曾明确地将Direct Rambus划分为PC600、PC700和PC800三种级别,最快等级的PC800拥有1.6 GB/s的数据传输率。它采用double-pumped(双泵)技术,即RDRAM是在时钟的上升沿和下降沿进行数据传输的,因此,PC800的规范实际是运行在400MHz的主频时钟提供的。   为了对抗RAMBUS公司,包括Micron在内的许多公司开始研发取代SDRAM的换代产品——DDR SDRAM,它同样拥有64位的内存总线宽度,在数据传输上采用了类似RDRAM的技术:利用时钟的上升下降沿进行数据的传送,使得DDR SDRAM的带宽有效地获得提升。运行在133MHz时钟下的DDR SDRAM可以获得PC133两倍的带宽:2×1.064 GB/sec = 2.128 GB/s。威盛作为新内存规范的倡导者之一,把DDR SDRAM的带宽标准称为PC266。在价格方面,Micron公司认为DDR SDRAM的价格跟目前的SDRAM非常接近,远比RDRAM便宜。现有DDR SDRAM已经在某些nVidia显示芯片的产品中采用(如Geforce 256 DDR和Quado系列)。7月份新Athlon芯片组推出的时候,将可能把DDR SDRAM作为新系统的主内存。下表是SDRAM以及RDRAM的的一些特征。   在i820芯片组和新的Coppermine的系统中,由于 Coppermine的数据总线仍是64位,工作主频为133MHz,这样RDRAM在实际运行中只能拥有PC 133 SDRAM一样的带宽:1.06GB/s。这个瓶颈将使得RDRAM相对SDRAM的高带宽优势荡然无存。(^16030101a^) #1 潜伏期带来的缺憾   高带宽是目前Rambus DRAM相较最明显的优势之一,但所有的存储器都需要在数据传送之前花费时间处理系统的请求,这种延缓,我们称之为潜伏期——“latency”。潜伏期是RDRAM的弱点,所受影响也比SDRAM大。   RDRAM是一个基于内存系统的协议,它的运作非常类似于一个16位带宽的微型网络通道:16位的数据包通过RDRAM传输时,必须把多个数据包整合为64位的大数据包,才能被处理器处理。在这个处理期间,数据必须完全地通过其在RIMM中特定的通道,这个操作过程跟SDRAM的表格式存取有绝然的不同,不可避免地增加了RDRAM数据传输的复杂性,从而导致了包括增加潜伏期等的一系列问题。   而且RDRAM的潜伏期是会随着内存的增加而变化的,RDRAM的数据必须连续地通过所有的RIMM插槽后,才能溢出到内存控制器。我们假设我们的系统中只有一条RIMM插槽,而这条RIMM又只有一条RDRAM内存,当有另一条RIMM加入到系统的时候,它就会带来寄生的输入电容以及阻抗失谐,从而造成信号的传送慢下来。除了上面这一点外,假如第二条RIMM与RDRAM控制器的距离更加远的话,数据从第二条RIMM到达RDRAM控制器的距离也就更远了。换而言之,数据从第二条RIMM到RDRAM控制器所要花费的潜伏时间也就比第一条RIMM更长。   这种增进式的潜伏延迟对于RDRAM控制器来说,简直是噩梦。为了解决这个问题,RDRAM控制器经过侦测,使用了RIMM中最高的潜伏时间作为其初始值,同时,把所有RDRAM设备的潜伏时间都设定为系统中最慢的RDRAM设备的潜伏时间。我们都知道,真实系统的RIMM都是拥有多枚RDRAM芯片的,所以,要对潜伏期进行平衡的操作就会变得非常复杂。   一枚典型RDRAM芯片的标准页面存储潜伏时间是20ns,为了平衡这些潜伏期,这些芯片使用了TPARM控制寄存器,该TPARM控制寄存器能够制造人为的2.5ns、5.0ns、7.5ns或者10.0ns的补偿潜伏时间。当使用RDRAM的系统启动或者复位的时候,处理器以及内存控制器内存控制器就会为每枚RDRAM芯片计算一个精密的初始值。这一系列操作包括了对每枚RDRAM芯片进行往返读取用以确定标准以及最长的潜伏期。然后,处理器或内存控制器尝试通过额外读取最接近内存控制器的RDRAM芯片的延缓时间,对所有的设备往返读取时间补偿。 #1 设计与制造工艺的问题   RDRAM虽然拥有极高的主频时钟,但这同时也给它造成了不少的麻烦。在高时钟运行环境中,RIMM插槽与主板就必须按照更加严格的公差以及布线长度进行制造,以减少由于电磁干涉(EMI)所造成的信号衰减。同时也使得RDRAM系统的设计变得更加复杂,i820芯片组设计的失误就是其中一个例子。同时高带宽的数据传输自然使得发热量增加,一枚单独的小RDRAM芯片就会消耗数瓦特的电量,这将使整个内存甚至周边设备的发热量增加,大家看到的RIMM内存覆盖着金属散热片也就是这个原因,加上金属散热片还可以对RDRAM芯片起一定的电磁屏蔽保护作用。   从上面可以得知,RDRAM远比SDRAM复杂得多。我们可以把这个复杂的程度具体到晶体管上来看:当使用同样的蚀刻工艺时,典型的RDRAM芯片在模腔面积上要比SDRAM大约大20%。随着模腔以及复杂性增加,良品率以及产量就会下降。而且内存速率的增加,RDRAM芯片更大、更复杂,所有的这一切都会对产量造成巨大的冲击。 #1 Willamete需要RDRAM吗?   英特尔在今年春季IDF(英特尔开发者论坛)上展示其下一代IA32处理器—Willamete的时候,声称Willamete的系统总线是为双通道的RDRAM优化的。Willamete的系统总线在RDRAM上的表现的确比Coppermine的133MHz表现更佳。有趣的是,Willamete的高端版本——Foster虽然是专用于工作站以及服务器领域的,但是,它准备使用的内存却是DDR SDRAM!要知道,工作站以及服务器的带宽要求都远比使用Willamete的个人PC高得多。   另一方面,英特尔的下一代整合芯片Timna原先是使用RDRAM的,但是,这个面向低端市场的整合产品最近由于英特尔对RDRAM价格失去信心,转而在其最新的发展蓝图中表明Timna是使用SDRAM的,只有Timna的下一代产品才使用RDRAM,依照目前的情况来看,就算是Timna的下一代产品,也不太可能使用RDRAM。 #1 结  语   目前,RDRAM的优势已经可以说是完全丧失殆尽,为什么这么说呢?先看看RDRAM的优势:   1.可以在i820主板上实现800MB/s的带宽,   2.可以在i840上以双通道数据传送的方式,实现1.6GB/s的带宽。   而现在普及的SDRAM又如何呢?   1.PC133 SDRAM可以在任何支持133MHz内存总线同步运行的系统上,提供1.06GB/s的带宽。 2.即将到来的133MHz DDR SDRAM可以提供2.1GB/s的内存带宽。   3.使用多Bank技术,比如ArtX公司的ArtX 2000在同一时间里,必须使用2条内存条,以提供类似于双通道的SDRAM带宽:2.1GB/s(133MHz)。目前,已经有人提出要使用4条DIMM的多Bank技术,如此一来,再加PC2100的DDR SDRAM的话,届时,我们可以获得内存带宽将高达8.4GB/s。当然,2 DIMM的多Bank技术似乎更加实际。   综上所述,RDRAM如果不能在两年内在理论上以及制造工艺上得到突飞猛进的改进的话,RDRAM的失败将是必然的。英特尔也注意到了这一点:目前,它正在修改RIMM的线路设计,有望在生产成本上获得较大的改善。但是,RDRAM在以后较长的一段时间里,都必将继续维持高昂的价格。只要RAMBUS与SDRAM存在200%以上的价格差异,即使RDRAM的性能优势再强,恐怕前途仍然堪忧。