服务器 频道

服务器指定内存 金士顿12G三通套装赏析

  除了基本的Parity校验之外,在服务器上常见的一种内存纠错技术叫做ECC(Error Correct Code,纠错码),和Parity比较相像,它也是在原来的数据位上外加位来实现的,增加的位用来重建错误数据。在ECC纠错体系中,如果数据为n个字节,则外加的ECC位为 log2(n + 5)。例如对于64位数据,需要外加log28 + 5 = 8个ECC位。这样整个内存位宽就是72位。和双通道、多通道内存不同,由于ECC技术增加了额外的数据位宽,因此需要内存控制器进行支持。

  当出现一个存储位错误时,ECC体系可以自动进行纠错。当出现2个数据位错误时,可以检测出来,但不能纠错,这种行为通常称作“单错纠正/双错检测(Single Error Correction/Double Error Detection ,简称SEC/DED)。一次存取中有2个以上的数据位出错时,由于SEC/DED体系检测不出来了,致使数据的完整性受损。采用这种结构的存储器,当检测出多位错误时,系统就会报告出现了致命故障(Fatal fault),之后系统崩溃。

  除了ECC之外,R——Registered,意为寄存器或目录寄存器(不过很少用中文称呼),在内存上的作用就像一个目录,Registered内存在接到读写指令时,会先检索此目录,然后再进行读写操作。拥有Registers功能的内存模组,可以通过重新驱动控制信号来改善内存的运作,提高电平信号的准确性,从而有助于保持系统长时间稳定运作。不过,由于Registered的信号重驱动需花费一个时钟周期,延迟时间有所增加,因此具有该功能内存的读写性能同样会稍低于普通内存。此外,由于时序的变化,Registered内存需要内存控制器的支持。


红框内是R-ECC内存比普通内存多出的部分:一个额外的ECC内存芯片(大)、一个Register芯片(中)、一个PLL芯片(小)

  对于普通人而言,Registered最大的作用是支持更大容量的内存:由于信号具有更高的稳定性,支持Registered通常会让内存支持翻倍。Registered在内存上缓存读写时钟信号并再次驱动内存芯片,获得更好的电气性能,从而支持更多的内存芯片。之支持Unbuffered内存的Core i7就只能支持24GB的容量,而支持Registered内存的单Xeon可以轻松达到48GB到72GB。

  提到通常的Unbuffered内存和Registered内存,人们就会想到有没有Buffered内存和Unregistered内存呢?有的,其实Buffered/Registered(缓存器/寄存器)都是Registered内存的工作方式,Buffered采用时钟异步方式工作,而后来发展的Registered采用时钟同步方式工作,后者的性能更好,因此Buffered模式逐渐消失了(因此,Unregistered这个词没什么意义)。

注:PLL(Phase Locked Loop,锁相环)是一种反馈电路,其作用是使得电路上的时钟和某一外部时钟(也就是内存条间)的相位同步。

0
相关文章