本帖最后由 ricky-gz 于 2010-5-18 11:26 编辑
内存负责向 CPU 提供软件和系统运算所需的原始数据,而目前 CPU 运行速度超过内存数据传输速度很多。因此,很多情况下,CPU 都需要等待内存提供数据,这就是常说的“CPU 等待时间”。
内存传输速度越慢,CPU 等待时间就会越长,系统整体性能受到的影响就越大。因此,快速的内存,是有效提升 CPU 效率和整机性能的关键之一。
在实际工作时,无论什么类型的内存,在数据被传输之前,传送方必须花费一定时间去等待传输请求的响应,通俗点说,就是传输前,传输双方必须要进行必要的通信,而这样就会造成传输的一定延迟时间。
时序设置一定程度上反映出了该内存在 CPU 接到读取内存数据的指令后,到正式开始读取数据所需的等待时间。不难看出,同频率的内存,时序设置低的,更具有速度优势。
上面只是给大家建立一个基本的延迟概念。而实际上,内存延迟的基本因素,绝对不止这些。内存延迟时间,有个专门的术语叫“Latency”。
要形象的了解延迟,我们不妨把内存当成一个存储着数据的数组,或者一个 EXCEL 表格,要确定每个数据的位置,每个数据都是以行和列编排序号来标示,在确定了行、列序号之后,该数据就唯一了。
内存工作时,在要读取或写入某数据,内存控制芯片会先把数据的列地址传送过去,这个 RAS 信号(Row Address Strobe,行地址信号)就被激活,
而在转化到行数据前,需要经过几个执行周期,然后接下来 CAS 信号(Column Address Strobe,列地址信号)被激活。在 RAS 信号和 CAS 信号之间的几个执行周期,就是 RAS-to-CAS 延迟时间。
在 CAS 信号被执行之后,同样也需要几个执行周期。
CL 设置较低的内存,具备更高的优势,这可以从总的延迟时间来表现。内存总的延迟时间有一个计算公式,总延迟时间=系统时钟周期×CL模式数+存取时间(tAC)。
首先,来了解一下存取时间(tAC)的概念。tAC 是 Access Time from CLK 的缩写,是指最大 CAS 延迟时的最大数输入时钟,是以纳秒为单位的,与内存时钟周期是完全不同的概念,虽然都是以纳秒为单位。
存取时间(tAC)代表着读取、写入的时间,而时钟频率则代表内存的速度。
举个例子,来计算一下总延迟时间。比如,一条 DDR333 内存,其存取时间为 6ns,其内存时钟周期为 6ns(DDR内存时钟周期=1X2/内存频率,DDR333 内存频率为 333,则可计算出其时钟周期为 6ns)。 我们在主板的 BIOS 中,将其 CL 设置为 2.5,则总的延迟时间=6ns X2.5+6ns=21ns。而如果 CL 设置为 2,那么总的延迟时间=6ns X2+6ns=18ns,就减少了 3ns 的时间。
从总的延迟时间来看,CL 值的大小起到了很关键的作用。
所以,对系统要求高和喜欢超频的用户,通常喜欢购买 CL 值较低的内存。目前,各内存颗粒厂商除了从提高内存时钟频率来提高 DDR 的性能之外,
已经考虑通过更进一步的降低 CAS 延迟时间,来提高内存性能。不同类型内存的典型 CL 值并不相同。
不过,并不是说 CL 值越低性能就越好,因为其它的因素会影响这个数据。例如,新一代处理器的高速缓存较有效率,这表示处理器比较少地直接从内存读取数据。
再者,列的数据会比较常被存取,所以 RAS-to-CAS 的发生几率也大,读取的时间也会增多。最后,有时会发生同时读取大量数据的情形,在这种情形下,相邻的内存数据会一次被读取出来,CAS 延迟时间只会发生一次。
以上是一些旧资料 目前主流主板BIOS中常见的内存参数设置选项主要有以下几种:CAS Latency Control(tCL)、RAS to CAS Delay(tRCD)、Row Precharge Timing (tRP)、Min RAS Active Timing(tRAS), 部分主板还提供了Command Per Clock(CMD)选项。除了上述常见参数设置外,大部分主板的BIOS中还提供了内存高级参数设置, 这些参数包括:Row to Row Delay(或RAS to RAS delay,tRRD)、Row Cycle Time(tRC)、Write Recovery Time(tWR)、Write to Read Delay(tWTR)、Refresh Period(tREF)等(如下图所示)。 需要提醒大家的是,不同主板厂商、不同品牌的BIOS在参数名称上可能存在一定差异,但是对应的缩写基本都是统一的。所以大家不用可以去记下参数的详细名称,只要记住对应的缩写就可以了。
同时降低tCL、tRCD、tRP、tRAS四项参数获得的性能提升最为明显,不过与内存在默认状态下的性能相比,整体提升幅度也只有1%-2%左右(个别测试项目可能达到4%以上,但不具备代表性),
并不象一些用户想像的那样有大幅提升,大家在实际使用过程中很难察觉性能上的变化。而大幅降低参数延迟可能会造成内存稳定性下降。
另外,在单独调节tCL、tRCD、tRP、tRAS参数的测试中,tCL参数的变化对于内存性能的影响要比其他三项参数更加明显一些。
所以,如果内存在低时序下无法稳定工作,大家可以先逐步提高tRCD、tRP、tRAS参数的延时,然后再增加tCL参数延迟,直至内存能够稳定工作为止。
小对比测试
上下2张图的配置都一样,唯一不同的是: 上图的内存时序为 8-8-8-24 下图的内存时序为 9-9-9-24 这里选择了几个比较简单的软件做测试。 PI, Everest 内存测试,winrar,还有下面的 pcmark vantage 从上面的测试可以看出价低一格内存时序对性能的提高是非常小的 《4%
除了性能方面的微弱差别外,当CMD参数设置为1T时,内存的稳定性和超频能力较2T设置大幅下降。比如在DDR2-800频率、4-4-4-10时序下,将CMD参数设置为1T后绝大多数内存均无法开机。
主流DDR2内存在1T设置下的性能要好于2T,但总体1%-3%的性能提升在实际使用中可以忽略不计。
而在稳定性方面,1T设置下内存的稳定性较差,轻则影响内存超频能力,重则影响系统的稳定性;2T则能够充分保证内存稳定工作。
对于普通用户而言,将内存CMD参数设置为1T是不明智的做法,虽然可能获得轻微的性能提升,但代价是稳定性大幅下降,得不偿失。
当然,如果您是一位热衷于追求极致性能的硬件发烧友,那么通过更改内存的时序参数就获得1%-3%的性能提升还是值得尝试的。
|