- 积分
- 280
- 下载分
- 分
- 威望
- 点
- 原创币
- 点
- 下载
- 次
- 上传
- 次
- 注册时间
- 2007-5-14
- 精华
|
马上注册,获取阅读精华内容及下载权限
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 贝贝 于 2009-7-15 18:51 编辑
好久没来了,因为维修不好做,所以转行了一段时间。其实很早就想说这个方面的知识了。只是忙,没空写。
有时候发现有的朋友还在问一些很基本的问题:比如说怎么数位,我的内存究竟是多少位,我的芯片要用几位的来
代换?
其实,只要你能理解什么是内存的BANK,以上的几乎不是问题。
1、那什么才是内存的BANK呢?
Bank (内存库) 在内存行业里,Bank至少有三种意思,所以一定要注意。 1、在SDRAM内存模组上,"bank 数"表
示该内存的物理存储体的数量。(等同于"行"/Row) 2、Bank还表示一个SDRAM设备内部的逻辑存储库的数量。(
现在通常是4个bank)。 3、它还表示DIMM 或 SIMM连接插槽或插槽组,例如bank 1 或 bank A。这里的BANK是内
存插槽的计算单位(也叫内存库),它是电脑系统与内存之间数据总线的基本工作单位。只有插满一个BANK,电脑
才可以正常开机。
呵呵,相信新手都看不明白吧。现在摸摸和你解释一下。
其实最关键的一句就是:只有插满一个BANK,电脑才可以正常开机。要记住这一点。
首先我们来说明一下:地址深度。
看一个模拟。比如说有一栋宿舍楼,这栋楼里有M层,每一层都有N个房间,通过用数字来表示层数和房间号,我们
就可以通过编号来选择每一个房间里所住的人。
内存内部也是一样的结构,它分有很多行(相当于楼层),每一行有数量一样的存储单元(相当于房间),而通过
呼叫某一行的某一编号的存储单元,我们可以得到里面的数据(相当于住的人)
在这里,内存里的行数(相当于楼层)的多少就叫做 地址深度 。和楼层的编号一样,地址越深,表示的行数越高
,而地址线越多,所能代表的行数也越多。而所能代表的地址线的多少,叫做 地址深度。一般来说,内存的地址
线有11-13条,这样,相应的地址深度也为11-13。
说完内存的行,我们来说每一行里的数据。
和宿舍楼一样,当我们指定了内存的行(即楼层数)和存储单元(即房间号)后,我们就可以得到了里面的数据。
但是这样得到的数据非常少。为了适应计算机的运算速度,人们决定不再单独呼叫某一存储单元里的数据,而采用
呼叫行的方法,把同一行里的数据一次性呼出一并交给CPU处理。
即相当于呼叫宿舍楼里某一层的人全部出来。这样可以得到更大的控制量。
由于CPU是按照一个运算标准所制定的。那么它在获取数据的时候也必须按一定的标准获取,如果一次性从内存中
读出的数据过少,那么将会影响速度,如果一次性读取的数据过多,可能处理不过来。还有可能呼叫到多余的数据
(因为一次呼叫就一整行)。经过几大公司的商定(好象我没有得参加)将CPU一次性从内存读取的数据定为64位
比较合适。所以64位这个标准就一直用了下来。
这表明了一点:内存中一个行里有64个数据,每次CPU呼叫的时候,内存控制器就把响应行的64个数据送给CPU处理
。处理完后再把64个数据一并送回到一行。
而根据规定,完成了这一行64个数据和有相关的地址深度(也就是说你的内存总要有那么几行,就是要有点容量啦
!)就完成了一个BANK的构建。就可以正常开机了!!!
2、那么为什么我们要那么多颗粒呢?
这个还是用楼房来做比画啦!
算一下,同时在一行里做64个数据存储单元是比较麻烦的。就好比宿舍楼,要是每一层都有64间房,做起来是挺麻
烦的(不过那是当年的事情了)
不过内存控制器不挑剔,他允许用多片颗粒来完成64个数据位的组合,就好比楼房一样,如果每一层的房间数不足
64个房间,那么可以另起一栋楼来作为补足。如果还不够,允许再起。总之,要保证每一层都有64个间房。而呼叫
层数的时候一次性出来64个就完成了。
但是这样的话就有一个要求:内存的地址深度要一样(就好比楼的高度要一致。如果有的楼超高,那超出的就作废
了)
由于生产的成品率和生产难度,颗粒的位数一般为4位,8位,16位。要用这些颗粒构成64位的方法有很多,比如8
个8位,4个8位+2个16位。等等。这些都可以构成一个BANK而正常开机。但由于设计的方便性和得到更好的颗粒的
性能一致,在生产上都使用一样位数的颗粒来进行组合。要得到64位的话,组合就有16个4位,8个8位,4个16位,
2个32位,等等
所以在内存的维修中,我们首先要看颗粒的位数,而用相同位数和相同地址深度的颗粒来代换。
3、如何看颗粒的位数
这个简单,把你内存的型号输进baidu里按回车键,你就找到你要的一切!
4、单面?双面?一个BANK?两个BANK?
我们常常说内存,会提到BANK的数量。而BANK的数量和主板又有什么关系呢?
前面我们说了,有了64个数据位和相关的地址深度,我们就得到了一个BANK。就像有几个宿舍楼一样,按一个标准
构成了一个住宅区,而这一整个区,就和内存一样,形成了一个整体(就是所谓的BANK)
和一根内存一样,一个住宅区的容量是有限的,为了扩充更大的容量,我们就需要另外建立一个BANK来扩充。
这时候出现一个问题:扩充的这个BANK可以和原来的BANK一起,使用同样的64个数据位。也可以另外使用64个数据
位。
就好比两个宿舍区可以使用一条道路,也可以另建一条道路。
这样有什么区别呢?
如果使用同一条道路进行传输(就好比内存中的两个BANK使用同一个底板,并使用底板上的共用的64个数据位传输
),就可以节省掉一条路的成本(相当于少用一块底板)。如果另外开一条路(就相当于用另外的一块底板),那
么每个BANK都可以独立使用和共同使用(就好比两条内存,可以放一起用也可以分两台电脑上用)。这样的做法个
有好处。
由于内存槽的数量是有限的,为了能使用更多的BANK,所以很多情况下,我们必须要在内存上做两个BANK。
那如何分出是1个还是2个BANK呢?
很简单,每一个BANK是64个位,如果你的内存上颗粒的位数加起来是64位,那就只有一个BANK,如果加起来是128
位,那就是两个BANK,如果加起来是256位,那就有4个BANK。
那有没有不是这几个数的呢?
在X86的系统中的答案是:没有!!!
因为X86中规定了一个BANK是64位,内置了两个BANK的内存就是128位(每64个位组成一个BANK),而四个BANK就是
256个位了。如果中间坏了一个或N个位,那是打不到开机条件的。另外也找不到有3个BANK的内存。
小提示:在同一根内存中如果有2个或4个BANK(我还没见过有8个的),那么他们的地址深度必须是一致的。
因为在使用中,内存的SPD会告诉主板它的BANK数量和地址深度,而不会告诉主板每一个BANK的地址深度是多少。
所以主板会认为每一个BANK的地址深度都是一致的。如果有某块BANK的地址深度不足,就会寻址错误。
那BANK的数量和单、双面有关系吗?
关系还是有的,如果你不明白单双面,你简单的数BANK数量就够了。
因为普通内存的一面最多能装8个颗粒(其实是9个,普通的就按8个算好了),这8个颗粒中,如果全是8位的话,
刚好一个BANK,如果是16位,那么就有两个BANK(8*16=128),如果是4个8位和4个16位,那将。。。。(不要问
这种无聊的问题,其实4个16位构成一个BANK已经可以开机了,那4片8位就无视了)。
这样的话,如果用8位的颗粒组成两个BANK,就需要16片,在PCB上就需要两面焊上元件,而16位呢,才8片,一面
就够了,那4位的颗粒呢?就要16片,只能用两面了,而且只有一个BANK。这就是为什么有的内存背面不能焊元件
的原因(因为是16位的,单面组成了两个BANK已经满了)
有人会问:摸摸你不是提到有4个BANK的内存吗?怎么两个BANK已经满了?
普通的电脑是没有办法识别那么多的BANK数量的
比如说845就只能识别4个BANK(知道为什么845只有两根内存槽了吧,一根内存两个BANK,他只能用4个,两个槽已
经够了,给多了也没用!)
而4个BANK的内存基本上是给服务器用的,这是因为服务器需要使用大内存的缘故(不信?你去找找服务器的SDR内
存1G的大把,普通电脑的512你都难买)
把BANK数量和单双面有什么区别呢?
BANK数量明确了内存的BANK数。如果你的内存有两个BANK,你拆掉一半,剩下一个BANK还可以正常使用。
而单双面并不能说名什么,他只是硬件设计上的面数。一般来说。我们会把一个BANK说成单面,两个BANK说成双面
,这是在意义上说的。而物理上具体他要分几个面来焊元件,这个我们就不明白设计者了。就好比8片的16位条,
他只用了单面来焊元件,但从意义上来说,它已经具备了双面内存的意义(两个BANK)。
5、补位条
什么是补位?
我们知道,需要64个位才能得到一个BANK,但是如果是芯片不合格,其中只有几个数据位可以用,那样将没有办法
和其他的芯片一起构成64个数据位。如果只有几片是这种情况,那就无所谓了。如果是 大批量的出现,回炉的成
本太高,扔了可惜,那就只能缩减数据位来做内存了。一般8位的颗粒如果大批量的坏掉1-3个位,厂家会把他们做
成补位条,使用一片的4个位和另一片的4个位,组成单片的8位来使用。
打个比方:就好比宿舍区的房子某一边全坏了,如果你还要按原来的标准每一层都住N个人的话,那你就得再建一
栋房子来补充坏掉的部分。而补充多少,则由坏掉的多少来决定。
与坏的房子不一样的是,房子坏多少你可以补多少。而在内存中,只有坏的颗粒才会放一起补。而不会好的坏的一
起补,因为好的颗粒成本高,补位的颗粒成本低,好的差的用在一起,只能降低好颗粒的身份。在上面的例子中,
8位的颗粒只有4位可以用,其实,它已经属于4位的内存条了。与真正的4位颗粒不一样的是:他是通过8位的颗粒
阉割出来的便宜货!
另外,4位颗粒确实是只有4个位,而4个位都是可以用的,而补位用的8位颗粒却是8个位都可以用,只是有几个位
的错误特别严重无法正常使用而已。而这几个无法正常使用的位,还有可能会影响到其他数据位的稳定性。只能说
,补位条是生产中的次品。这种内存甚至不能修理,有一部分数据位不稳定,一时有问题一时没问题的。不能确定
好坏!
6、要怎么样去修内存
其实当你知道使电脑正常开机的条件后,你就知道该怎么去修内存了。
修内存很简单,你只要把不满足的BANK把他构建完全就可以了。
比如我的一根内存,有一个数据位虚焊了,那么他现在只有63个数据位,不足一个BANK,那么,我只要找出这个虚
焊的数据位并把它连上就OK了。
而如果是内存中某一颗粒中有部分存储单元坏了,只要把这个颗粒换掉,换成可以构成这一个完整BANK的,地址深
度也一样的就可以了(实际中速度也要一样)。
而如何找坏的颗粒,已经有很多人在说了,我在这里就不说了。
今天在这里说那么多。我只想和新手说说内存的最基本的构成。看懂了这些,你们就不会再问:我的内存要怎么修
?我用这个颗粒能不能代换?我能不能用两条内存合并成一条?我的内存颗粒拆了一半还能不能用?
摸摸只跟你说:自己数BANK去吧!
小提示:很多颗粒是没有标地址深度的,其实只要在内存颗粒的位数一样的情况下,容量一样的颗粒地址深度就是
一样的,而容量越大地址越深。
摸摸很久没修内存了,也很久没弄维修了。只是久不久上来一下,发现我居然成了VIP了,承蒙大家的爱待,不写
点东西总觉得过意不去。
以上是小弟自己的学习经验,有不对的地方希望大家指出更正! |
评分
-
查看全部评分
|