荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: winsomecandy (贱人,我是), 信区: Hardware
标  题: 内存白皮书之完全解读(2)
发信站: 荔园晨风BBS站 (Wed Nov 27 10:29:11 2002), 站内信件

内存名词解释

SIMM(Single In-line Memory Modules)

  单边接触内存模组。是5X86及其较早的PC中常采用的内存接口方式。在486以
前,多采用30针的SIMM接口,而在Pentuim中更多的是72针的SIMM接口,或者与
DIMM接口类型并存。人们通常把72线的SIMM类型内存模组直接称为72线内存。

DIMM(Dual In-line Memory Modules)

  双边接触内存模组。也就是说这种类型接口内存的插板两边都有数据接口触片
,这种接口模式的内存广泛应用于现在的计算机中,通常为84针。由于是双边的,
所以共有84×2=168线接触,所以人们常把这种内存称为168线内存。

ECC(Error Checking and Correcting)

  错误检查和纠正。与奇偶校验类似,它不但能检测到错误的地方,还可以纠正
绝大多数错误。它也是在原来的数据位上外加位来实现的,这些额外的位是用来重
建错误数据的。只有经过内存的纠错后,计算机操作指令才可以继续执行。

SPD(Serial Presence Detect)

  串行存在探测。在选购168线的SDRAM时,发现有的内存会多一颗小芯片,这就
是具备SPD能力的内存。SPD是一个8针的256字节的电可擦写可编程只读存储器芯片
。位置一般在内存条正面的右侧,记录着内存的速度、容量、电压与行、列地址带
宽等参数信息。当开机时BIOS将自动读取SPD中的信息,如果没有SPD,就容易出现
死机和致命错误的现象。它更是识别PC100内存的一个重要标志,一个必要条件,
如果没有则肯定是假的。

内存名称详解

PC-66

  这种内存使用66MHz的频率,而这也是第一代的SDR SDRAM内存。

PC-100

  同样的,这种内存只是将工作频率提升到了100MHz,工作在CAS3模式下。

PC-133

  这次改变还是只是将频率提升到133MHz,同样工作在CAS3模式下。

PC-150

  这种内存并非官方发布的一个版本,而PC-150实际上就是一个超频版的内存。
通常这种内存可以运行在150MHz频率CAS3模式或者是133MHz频率CAS2模式下,但是
据说Corsair的PC-150内存可以在150MHz 的频率下以CAS2的模式工作。

PC-166

  另外一类超频内存,只是单纯的超频使得频率达到了一个新高点而已,仍然运
行在CAS3之下。

PC-180

  可以算作是另类的超频内存了,它简单的将频率提升到了180MHz,但是我个人
认为这种内存没有实际使用的意义,因为毕竟现在DDR内存的价格已经是非常便宜
了。

DDR SDRAM

  DDR内存按照速度分类就可以用两种方法来进行分类了。 第一种就是以
DDRXXX这种方式命名。后边的“XXX”就表示了这个内存是以两倍于XXX的速度运行
的内存。另外一种就是以PCXXXX进行命名。后边的“XXXX”就是内存的带宽。

PC1600

  此类DDR内存就是最早的一代DDR内存了。它的工作频率为200MH(由于是DDR内
存,所以频率增加一倍,就是100MHz x2所以实际上这类内存是工作在200MHz的频
率下的),而工作模式为CAS2.5。

DDR266/PC2100

  现在最普遍见到的DDR内存,工作频率为266MHz,工作模式为CAS2.5。

PC2400

  又是一个非官方版本的DDR内存。实际上就是通过对内存颗粒的筛选、改造而
制造成质量上乘的超频DDR内存。这样,让它们可以在150MHz(实际使用中双倍变
为300MHz)的频率下工作在CAS2的模式下。Corsair就是其中的一个厂商。

DDR333/PC2700

  官方发布的一个DDR内存版本,通过将内存频率增加到166MHz DDR(实际工作中
双倍变为333MHz)的CAS2.5模式,来提升系统性能。

PC3000

  DDR内存的一个超频版,将内存超频到183 x 2的366MHz,并且工作在CAS2的模
式下。同样的,这些内存还是由比如象Corsair这样的一些大内存生产商提供。

DDR400/PC3200

  目前还没有通过官方认可,工作的频率——200MHz DDR(实际工作频率为
400MHz)。

RDRAM

  RDRAM 内存的命名方式和DDR内存非常相似。统一命名采用PCXXX的格式,而其
中的XXX 就接近于内存实际工作频率。

PC600

  这是第一代的RDRAM。工作频率为300MHz DDR (也就是实际工作频率为
600MHz)。

PC700

  也是第一代的RDRAM内存。工作频率为356MHz DDR (也就是实际工作频率为
712MHz)。

PC800

  这也是第一代的RDRAM内存版本。工作频率为400MHz DDR (实际工作频率为
800MHz)。这是至今为止能买到的最高频率的内存。

PC1066

  这是RDRAM中新的一代内存,它运行在533MHz DDR之下,实际工作频率达到了
1.66MHz。很明显这是和Intel的Northwood P4想搭配使用的,因为Northwood P4正
好也是使用的533MHz的前端总线频率。

PC1200

  未来的16-bit 的RDRAM内存。和PC1066/800类似,他的运行频率将在600MHz
DDR (实际为1200MHz这个频率之下)。

  也许大家都注意到了,前边我们所提到的内存都是16位的。而我们从技术特点
上分析16位的内存都对于高要求的系统来说已经有点捉襟见肘了,所以,市场迫切
需要32位的RDRAM内存面市。而正因为这样,才有了我们后边的RIMMXXXX系列内存
。RIMMXXXX内存是32位RDRAM内存的一个标示方式。后边的XXXX就表示的是内存的
带宽。

RIMM 3200

  未来的32-bit的RDRAM内存。而这个时候RIMM 3200 将会运行在400MHz DDR频
率之下 (实际工作频率为800MHz),这个速度和PC800的RDRAM正好一样,但是实际
上它们也有了质的不同了——毕竟这是32位的存储器了。

RIMM 4200

  32位的RDRAM内存,运行频率为533MHz DDR (实际频率为1066MHz)——同
PC1066 RDRAM运行速度类似。

RIMM 4800

  32位的RDRAM内存,工作频率为600MHz DDR (实际频率为1200MHz)——同
PC1200 RDRAM的速度一样。

计算内存带宽

  内存的带宽总量可能是决定一组内存的性能的重要标准之一了。这个是什么意
思呢?其实真正理解起来不难,而且还非常容易计算。我们刚才所说的内存带宽总
量其实就是在理想状态下这一组内存在一秒内所能传输的最大数据容量。公式也很
简单:内存带宽总量(MBytes) = 最大时钟速频率 (MHz) x 总线宽度 (bits) x 每
时钟数据段数量/ 8

  好了,我们还是来解释解释吧。“每始终数据段数量”这个是最好理解的了—
—你只需要记住,如果你的内存是SDR那么这里这个值就等于1,如果您使用的是
DDR或者是RDRAM的话,那么这个值就是2。然后我们再将这个值除以8的意义就是将
位这个单位换算成为字节。
所以说,对于一般的标准PC2100 DDR内存来说,他的最大时钟频率应该是133MHz,
而它的内存总线宽度为64bit,每时钟数据段数为2。所以(133x64x2)/8 =
2128MB/s。一秒种能够传输2128MB,现在你知道为什么叫做PC2100了吧?

  再来一个例子。这次就拿PC800的RDRAM来计算吧。最大时钟频率为400MHz,内
存总线宽度为16bit,每时钟数据段数为2,那么套用公式了之后就是(400x16x2)/8
 = 1600MB/s。

  从这里的大家可以看的出来吧,PC2100的DDR内存能够提供高达2.1GB/s 的带
宽,而RDRAM内存的带宽只能达到1.6GB/s,但是需要大家注意的是,由于RDRAM是曾
对使用,两条内存一共可以3.2GB/s的内存带宽,而新一代的RIMM内存(总线为32位
的RDRAM内存) 将会使用两个数据通道进行工作,所以,他们的带宽几一下增加了
一倍——这样就成为了3.2GB/s,并且单独一条内存即可使用。

  我们后边的讨论可能会将重心放在SDRAM内存上,因为毕竟这种内存是时至今
日用得最多的一种内存。

内存时钟

  首先要我要理性的给大家说,内存的性能并不单单只是由它传送数据的快慢决
定的。内存从接受到请求到对这个请求作出反应也是决定内存的性能一个非常重要
的因素。而现在大多数的内存性能都被这个重要的因素所制约着,它就是——持续
反应时间(潜伏期)。

  由于当前RDRAM的持续反应时间比较高,所以,在很大程度上影响了RDRAM内存
的性能,并且RDRAM的价格比较高昂,导致现在很多人已经不在向往RDRAM,而投向
了DDR内存的怀抱。

内存设置参数

行地址控制器 (CAS)

  行地址控制器(CAS)可能是最能决定内存模块对数据请求进行响应的因素之
一了。通常我们把这个叫做CAS延迟,一般来说,在SDR SDRAM中,我们可以设定为
2 或者3(当然是根据自己内存的具体情况而定)。对于DDR内存来说,我们一般常
用的设定为2 或者2.5。

  内存中最基本的存储单元就是柱面,而这些柱面通过行和列的排列组成了一个
矩阵。而每个行和列的坐标集就代表了一个唯一的地址。所以内存在存取数据的时
候是根据行和列的地址集来进行数据搜索的。

寻址到可用(Trp)/CAS到RAS (CMD)

  相对而言,Trp以及CMD时间并没有CAS时间那么重要,但是也是足以影响内存
的性能的了。一般这个地方设置的值为3 (时钟循环),如果把这个这个值改小为2
,就可以提升一点内存性能。

列地址控制器(RAS) /其他延迟

  内存本身就是一个非常复杂的零部件,可以这么说,计算机内部工作过程最复
杂的就是存储器了。但是幸好这些烦琐的工作对于我们这些最终用户来说是透明的
,而我们平时用来判断内存性能、质量好坏的这些参数也只是其中的一些部分而已
。有两个是不得不提到的,那就是RAS延迟和另外两个延迟。RAS 通常为6个始终循
环,但是实际上在超频中可以将它修改为5。

  Command rate(指令比率)是另外一个比较普遍的延迟。允许进行的设置为
1T或者是2T,而通常2T是默认的设置,1T就要比2T稍微快一点点。另外一个需要注
意的地方就是Row Cycle Time (Trc,列循环时间),这个参数一般为3或者2。

其他一些和内存紧密相关的参数:

Bank 激活时间
Bank 循环时间
已装载数据到充电前时间
已装载数据到激活时间
Bank到Bank延迟

  大多数的这些参数都是在内存出厂的时候由厂商根据内存的型号种类设定好了
的,比如说PC2100 DDR, PC800 RAMBUS, PC133 SDR等等,他们不同的内存会给他
们设置不同的参数。而我们不能够自己随意的改动它。

  校验内存和缓冲内存和以上我们介绍的内存又有不一样的地方。为了同步内存
的时钟频率(这在一些特殊的情况下要求特别严格),数据在输出前是要首先被放
到一个叫做“校验区”的存储模块中,这样很多人都把这种内存叫做“校验内存”
。这样就可以保证所有从内存中读出的数据都是“同步”的,这样就可以避免很多
的数据读写错误了。这样的一个校验过程将会消耗掉一个时钟循环,所以理论上
CAS 2的校验内存将会和CAS 3的非缓冲内存性能相当——不要嫌弃,这一切都是为
了数据的稳定。

  也许有一些朋友会注意到,当他们把内存设置到CAS 2工作模式下的时候,反
而系统的性能还没有默认的CAS 2.5/3好了,这是什么原因呢?我的理解是这样的
:内存根本就不能稳定的工作在那种模式下,而用户强行的将内存设置为那种工作
模式,这样的话就会在存取数据的时候不时的造成数据“丢失”,这样数据不能取
得,当然就只能重新读取,这样就浪费掉了很多的时间,当然系统效率就变低了哦
。举个例子方便理解吧。内存试着去搜索所有的行和列,但是如果它在这个时钟循
环中并没有能够完成这次数据读取,那么就只有等待下一个循环,本来用一个时钟
循环就能够解决的问题而现在需要用两个时钟循环甚至三个去完成,这就明显的降
低了系统效率。这个时候,越是高的频率越容易导致错误。

内存交错模式

  由于在这些延迟的时间间隔内,内存是不能进行读写工作的,所以这个等待时
间也造成了内存暂时工作停止。为了避免这种情况发生,内存就可以使用交错模式
,但是一般来说,内存默认这项功能是关闭的。如果要提高性能的话,那么就把这
个模式设置为2-way甚至4way。

  我们再来复习一遍内存的循环过程“CAS -> CMD -> RAS -> 输出数据”。想
像一下,如果你的一半内存正在进行行寻址(CAS阶段),而另外一半的内存已经
完成了列的寻址(RAS阶段)。如果是这种情况的话,那么一个输出过程就将会执
行两个时钟周期才能完成。大家仔细想想也就知道了,内存交错模式并不能使你的
显存的存取速度增倍,但是实际上它利用了显存的等待时间,从而提高了显存的工
作效率。

  最开始的时候交错模式是应用在独立的两根内存条上的,但是现在已经改变了
这种情况,现在单独的一根内存条也可以采用交错模式进行工作。在现在的内存(
SDR/DDR SDRAM这些)中,你可以在只有一根内存的情况下就使用2路或者4路交错
模式。实际上,交错模式并不是内存条和内存条之间进行的一种“交错”,而是内
存的bank和bank之间进行的一种提高效率的工作方式。现在绝大多数的内存都被设
计为了4个bank,所以,实际上你可以在2-way和4-way之间做一个选择。

内存超频

  听起来神秘莫测的内存超频其实也是相当简单的。首先我们要提醒你的是,如
果一旦你对内存进行超频使用,当内存损坏了之后,你的内存就不属于质保范围。
而超频这种东西也是见仁见智了。

  超频的意义其实就是在承担了随时都可能会对电脑造成毁灭性的伤害的风险的
同时,将电脑的性能推向它的极限!其中有风险,但也有乐趣。如果超频方法不正
确,轻则导致系统经常不稳定,重则你将会可能损坏一部分的硬件设备,而导致这
些配件永远的离你而去,给你留下不可磨灭的心灵创伤和阴影——呵呵,说得有点
过。超频的一个必备的要素就是“胆大心细”。一旦超频成功,你将会得到系统性
能的提升——而且这不用花一分钱!

  好了,现在我们言归正传,现在来说怎么超频吧。其实很少有朋友是为了超频
内存而对内存进行超频的,他们购买容易超频的内存的目的只是为了让CPU能够运
行在更高的频率下。现在很多的机器的内存是按照CPU的时钟频率(FSB,前端总线
频率)同频运行的。这也就以为着要加速内存运行就必须要提高FSB的频率,那么
顺理推下去,就要提高CPU的频率。同时,PCI总线也是以前端总线的一个分频在进
行工作,如果一旦前端总线频率提升了,那么PCI总线的频率也势必提升,那么这
里又触及到了PCI设备在高于额定频率下能不能稳定工作的问题了……

  提高内存工作频率比低潜伏期更能提升系统性能。绝大多数内存在高潜伏期的
工作状态要比低潜伏期工作状态超频能力强一些。所以,在对内存超频之前,请将
你的内存潜伏期值设置得高点。

  当然,超频的瓶颈部分也并不是只是内存。当你达到了一个比较高的频率,而
且反复测试系统在这个时候能够比较稳定的工作的话,你以为超频工作算完了吗?
没有!我们来近一步提升内存性能。这个时候我们要试着降低内存的潜伏期。首先
是设置内存寻址到可用的延迟,我们把这个值从3 改到2。接着试试降低CMD,最后
再试试CAS 延迟。CAS延迟一旦得到恰当的设置对系统的性能提升是很有帮助,但
是这也是诸多设置中最不好掌握的一个。

  通常来说2-3-3-6的时钟设置要比3-2-2-5更能突出系统的性能。

  从经验上来讲,以下设置改动能够让你的SDR内存拥有更好的工作状态,提高
系统的性能。当然,系统的差异也是存在的,所以还是以下内容仅供参考。

Interleave 关闭 -> Interleave 4-way
CAS 3 -> CAS 2
Trp3 -> Trp2 / CMD3 -> CMD2
Interleave 关闭 -> Interleave 2-way / Interleave 2-way -> Interleave
4-way
Command Rate3 -> Command Rate2
RAS6 -> RAS5
如果是DDR内存的话,我会做这样的设置修改建议。
Interleave 关闭-> Interleave 4-way
Trp3 -> Trp2 / CMD3 -> CMD2
CAS2.5 -> CAS2
Interleave 关闭 -> Interleave 2-way / Interleave 2-way -> Interleave
4-way
Command Rate3 -> Command Rate2
RAS6 -> RAS5

  需要提到的是RAS似乎很奇怪,有的机器上一旦调节了这个参数之后,系统的
性能就能得到一个非常不错的提高,但是有的机器调节了他性能却没有什么起色,
而且不仅仅没有性能提高,反而会影响系统的稳定性……所以,如果感觉有什么不
对劲儿的话,请马上修改回6!
--
 一丝丝一点点 撕毁忆记 一幅幅一声声 又复燃起 怎么舍得你 任由我 肠断至死

       恋一生差一些 不可一起 只一生等一天 日月如飞 却等不到你

                           未忘记 又想起你

※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.32.247]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店