内存又称主存,是CPU能直接寻址的存储空间,由半导体器件制成。内存的特点是存取速率快。内存是电脑中的主要部件,它是相对于外存而言的。我们平常使用的程序,如Windows操作系统、打字软件、游戏软件等,一般都是安装在硬盘等外存上的,但仅此是不能使用其功能的,必须把它们调入内存中运行,才能真正使用其功能,我们平时输入一段文字,或玩一个游戏,其实都是在内存中进行的。就好比在一个书房里,存放书籍的书架和书柜相当于电脑的外存,而我们工作的办公桌就是内存。通常我们把要永久保存的、大量的数据存储在外存上,而把一些临时的或少量的数据和程序放在内存上,当然内存的好坏会直接影响电脑的运行速度。
内存一般采用半导体存储单元,包括随机存储器(RAM),只读存储器(ROM),以及高速缓存(CACHE)。只不过因为RAM是其中最重要的存储器。(synchronous)SDRAM同步动态随机存取存储器:SDRAM为168脚,这是目前PENTIUM及以上机型使用的内存。SDRAM将CPU与RAM通过一个相同的时钟锁在一起,使CPU和RAM能够共享一个时钟周期,以相同的速度同步工作,每一个时钟脉冲的上升沿便开始传递数据,速度比EDO内存提高50%。DDR(DOUBLE DATA RATE)RAM :SDRAM的更新换代产品,他允许在时钟脉冲的上升沿和下降沿传输数据,这样不需要提高时钟的频率就能加倍提高SDRAM的速度。
●只读存储器(ROM)
ROM表示只读存储器(Read Only Memory),在制造ROM的时候,信息(数据或程序)就被存入并永久保存。这些信息只能读出,一般不能写入,即使机器停电,这些数据也不会丢失。ROM一般用于存放计算机的基本程序和数据,如BIOS ROM。其物理外形一般是双列直插式(DIP)的集成块。
●随机存储器(RAM)
随机存储器(Random Access Memory)表示既可以从中读取数据,也可以写入数据。当机器电源关闭时,存于其中的数据就会丢失。我们通常购买或升级的内存条就是用作电脑的内存,内存条(SIMM)就是将RAM集成块集中在一起的一小块电路板,它插在计算机中的内存插槽上,以减少RAM集成块占用的空间。目前市场上常见的内存条有1G/条,2G/条,4G/条等。
●高速缓冲存储器(Cache)
Cache也是我们经常遇到的概念,也就是平常看到的一级缓存(L1 Cache)、二级缓存(L2 Cache)、三级缓存(L3 Cache)这些数据,它位于CPU与内存之间,是一个读写速度比内存更快的存储器。当CPU向内存中写入或读出数据时,这个数据也被存储进高速缓冲存储器中。当CPU再次需要这些数据时,CPU就从高速缓冲存储器读取数据,而不是访问较慢的内存,当然,如需要的数据在Cache中没有,CPU会再去读取内存中的数据。
●物理存储器和地址空间
物理存储器是指实际存在的具体存储器芯片。如主板上装插的内存条和装载有系统的BIOS的ROM芯片,显示卡上的显示RAM芯片和装载显示BIOS的ROM芯片,以及各种适配卡上的RAM芯片和ROM芯片都是物理存储器。
存储地址空间是指对存储器编码(编码地址)的范围。所谓编码就是对每一个物理存储单元(一个字节)分配一个号码,通常叫作“编址”。分配一个号码给一个存储单元的目的是为了便于找到它,完成数据的读写,这就是所谓的“寻址”(所以,有人也把地址空间称为寻址空间)。
地址空间的大小和物理存储器的大小并不一定相等。举个例子来说明这个问题:某层楼共有17个房间,其编号为801~817。这17个房间是物理的,而其地址空间采用了三位编码,其范围是800~899共100个地址,可见地址空间是大于实际房间数量的。
对于386以上档次的微机,其地址总线为32位,因此地址空间可达2的32次方,即4GB。(虽然如此,但是我们一般使用的一些操作系统例如windows xp、却最多只能识别或者使用3.25G的内存,64位的操作系统能识别并使用4G和4G以上的的内存,
好了,现在可以解释为什么会产生诸如:常规内存、保留内存、上位内存、高端内存、扩充内存和扩展内存等不同内存类型。
这里需要明确的是,我们讨论的不同内存的概念是建立在寻址空间上的。IBM推出的第一台PC机采用的CPU是8088芯片,它只有20根地址线,也就是说,它的地址空间是1MB。
PC机的设计师将1MB中的低端640KB用作RAM,供DOS及应用程序使用,高端的384KB则保留给ROM、视频适配卡等系统使用。从此,这个界限便被确定了下来并且沿用至今。低端的640KB就被称为常规内存即PC机的基本RAM区。保留内存中的低128KB是显示缓冲区,高64KB是系统BIOS(基本输入/输出系统)空间,其余192KB空间留用。从对应的物理存储器来看,基本内存区只使用了512KB芯片,占用0000至7FFFF这512KB地址。显示内存区虽有128KB空间,但对单色显示器(MDA卡)只需4KB就足够了,因此只安装4KB的物理存储器芯片,占用了B0000至B0FFF这4KB的空间,如果使用彩色显示器(CGA卡)需要安装16KB的物理存储器,占用B8000至BBFFF这16KB的空间,可见实际使用的地址范围都小于允许使用的地址空间。
到1984年,即286被普遍接受不久,人们越来越认识到640KB的限制已成为大型程序的障碍,这时,Intel和Lotus,这两家硬、软件的杰出代表,联手制定了一个由硬件和软件相结合的方案,此方法使所有PC机存取640KB以上RAM成为可能。而Microsoft刚推出Windows不久,对内存空间的要求也很高,因此它也及时加入了该行列。
在1985年初,Lotus、Intel和Microsoft三家共同定义了LIM-EMS,即扩充内存规范,通常称EMS为扩充内存。当时,EMS需要一个安装在I/O槽口的内存扩充卡和一个称为EMS的扩充内存管理程序方可使用。但是I/O插槽的地址线只有24位(ISA总线),这对于386以上档次的32位机是不能适应的。所以,现在已很少使用内存扩充卡。现在微机中的扩充内存通常是用软件如DOS中的EMM386把扩展内存模拟或扩充内存来使用。所以,扩充内存和扩展内存的区别并不在于其物理存储器的位置,而在于使用什么方法来读写它。下面将作进一步介绍。[3]
前面已经说过扩充存储器也可以由扩展存储器模拟转换而成。EMS的原理和XMS不同,它采用了页帧方式。页帧是在1MB空间中指定一块64KB空间(通常在保留内存区内,但其物理存储器来自扩展存储器),分为4页,每页16KB。EMS存储器也按16KB分页,每次可交换4页内容,以此方式可访问全部EMS存储器。符合EMS的驱动程序很多,常用的有EMM386.EXE、QEMM、TurboEMS、386MAX等。DOS和Windows中都提供了EMM386.EXE。
在386以上档次的微机中,有两种存储器工作方式,一种称为实地址方式或实方式,另一种称为保护方式。在实方式下,物理地址仍使用20位,所以最大寻址空间为1MB,以便与8086兼容。保护方式采用32位物理地址,寻址范围可达4GB。DOS系统在实方式下工作,它管理的内存空间仍为1MB,因此它不能直接使用扩展存储器。为此,Lotus、Intel、AST及Microsoft公司建立了MS-DOS下扩展内存的使用标准,即扩展内存规范XMS。我们常在Config.sys文件中看到的Himem.sys就是管理扩展内存的驱动程序。
扩展内存管理规范的出现迟于扩充内存管理规范。
在实方式下,内存单元的地址可记为:
通常用十六进制写为XXXX:XXXX。实际的物理地址由段地址左移4位再和段内偏移相加而成。若地址各位均为1时,即为FFFF:FFFF。其实际物理地址为:FFF0+FFFF=10FFEF,约为1088KB(少16字节),这已超过1MB范围进入扩展内存了。这个进入扩展内存的区域约为64KB,是1MB以上空间的第一个64KB。我们把它称为高端内存区HMA(High Memory Area)。HMA的物理存储器是由扩展存储器取得的。因此要使用HMA,必须要有物理的扩展存储器存在。此外HMA的建立和使用还需要XMS驱动程序HIMEM.SYS的支持,因此只有装入了HIMEM.SYS之后才能使用HMA。
为了解释上位内存的概念,我们还得回过头看看保留内存区。保留内存区是指640KB~1024KB(共384KB)区域。这部分区域在PC诞生之初就明确是保留给系统使用的,用户程序无法插足。但这部分空间并没有充分使用,因此大家都想对剩余的部分打主意,分一块地址空间(注意:是地址空间,而不是物理存储器)来使用。于是就得到了又一块内存区域UMB。
UMB(Upper Memory Blocks)称为上位内存或上位内存块。它是由挤占保留内存中剩余未用的空间而产生的,它的物理存储器仍然取自物理的扩展存储器,它的管理驱动程序是EMS驱动程序。
还有另的诠释:内存延迟基本上可以解释成是系统进入数据进行存取操作就序状态前等待内存响应的时间。打个形象的比喻,就像你在餐馆里用餐的过程一样。你首先要点菜,然后就等待服务员给你上菜。同样的道理,内存延迟时间设置的越短,电脑从内存中读取数据的速度也就越快,进而电脑其他的性能也就越高。这条规则双双适用于基于英特尔以及AMD处理器的系统中。由于没有比2-2-2-5更低的延迟,因此国际内存标准组织认为以现在的动态内存技术还无法实现0或者1的延迟。
通常情况下,我们用4个连着的阿拉伯数字来表示一个内存延迟,例如2-2-2-5。其中,第一个数字最为重要,它表示的是CAS Latency,也就是内存存取数据所需的延迟时间。第二个数字表示的是RAS-CAS延迟,接下来的两个数字分别表示的是RAS预充电时间和Act-to-Precharge延迟。而第四个数字一般而言是它们中间最大的一个。
经过上面分析,内存储器的划分可归纳如下:
●基本内存占据0~640KB地址空间。
●上位内存(UMB)利用保留内存中未分配使用的地址空间建立,其物理存储器由物理扩展存储器取得。UMB由EMS管理,其大小可由EMS驱动程序设定。
●高端内存(HMA)扩展内存中的第一个64KB区域(1024KB~1088KB)。由HIMEM.SYS建立和管理。
●XMS内存符合XMS规范管理的扩展内存区。其驱动程序为HIMEM.SYS。
●EMS内存符合EMS规范管理的扩充内存区。其驱动程序为EMM386.EXE等。
内存:随机存储器(RAM),主要存储正在运行的程序和要处理的数据。
大家知道,计算机系统的时钟速度是以频率来衡量的。晶体振荡器控制着时钟速度,在石英晶片上加上电压,其就以正弦波的形式震动起来,这一震动可以通过晶片的形变和大小记录下来。晶体的震动以正弦调和变化的电流的形式表现出来,这一变化的电流就是时钟信号。而内存本身并不具备晶体振荡器,因此内存工作时的时钟信号是由主板芯片组的北桥或直接由主板的时钟发生器提供的,也就是说内存无法决定自身的工作频率,其实际工作频率是由主板来决定的。
DDR内存和DDR2内存的频率可以用工作频率和等效频率两种方式表示,工作频率是内存颗粒实际的工作频率,但是由于DDR内存可以在脉冲的上升和下降沿都传输数据,因此传输数据的等效频率是工作频率的两倍;而DDR2内存每个时钟能够以四倍于工作频率的速度读/写数据,因此传输数据的等效频率是工作频率的四倍。例如DDR 200/266/333/400的工作频率分别是100/133/166/200MHz,而等效频率分别是200/266/333/400MHz;DDR2 400/533/667/800的工作频率分别是100/133/166/200MHz,而等效频率分别是400/533/667/800MHz。
在计算机诞生初期并不存在内存条的概念,最早的内存是以磁芯的形式排列在线路上,每个磁芯与晶体管组成的一个双稳态电路作为一比特(BIT)的存储器,每一比特都要有玉米粒大小,可以想象一间的机房只能装下不超过百k字节左右的容量。后来才出线现了焊接在主板上集成内存芯片,以内存芯片的形式为计算机的运算提供直接支持。那时的内存芯片容量都特别小,最常见的莫过于256K×1bit、1M×4bit,虽然如此,但这相对于那时的运算任务来说却已经绰绰有余了。
内存芯片的状态一直沿用到286初期,鉴于它存在着无法拆卸更换的弊病,这对于计算机的发展造成了现实的阻碍。有鉴于此,内存条便应运而生了。将内存芯片焊接到事先设计好的印刷线路板上,而电脑主板上也改用内存插槽。这样就把内存难以安装和更换的问题彻底解决了。
在80286主板发布之前,内存并没有被世人所重视,这个时候的内存是直接固化在主板上,而且容量只有64 ~256KB,对于当时PC所运行的工作程序来说,这种内存的性能以及容量足以满足当时软件程序的处理需要。不过随着软件程序和新一代80286硬件平台的出现,程序和硬件对内存性能提出了更高要求,为了提高速度并扩大容量,内存必须以独立的封装形式出现,因而诞生了“内存条”概念。
在80286主板刚推出的时候,内存条采用了SIMM(Single In-lineMemory Modules,单边接触内存模组)接口,容量为30pin、256kb,必须是由8 片数据位和1 片校验位组成1 个bank,正因如此,我们见到的30pin SIMM一般是四条一起使用。自1982年PC进入民用市场一直到现在,搭配80286处理器的30pin SIMM内存是内存领域的开山鼻祖。
随后,在1988 ~1990 年当中,PC 技术迎来另一个发展高峰,也就是386和486时代,此时CPU 已经向16bit 发展,所以30pin SIMM内存再也无法满足需求,其较低的内存带宽已经成为急待解决的瓶颈,所以此时72pin SIMM 内存出现了,72pin SIMM支持32bit快速页模式内存,内存带宽得以大幅度提升。72pin SIMM内存单条容量一般为512KB ~2MB,而且仅要求两条同时使用,由于其与30pin SIMM 内存无法兼容,因此这个时候PC业界毅然将30pin SIMM 内存淘汰出局了。
EDO DRAM(Extended Date Out RAM 外扩充数据模式存储器)内存,这是1991 年到1995 年之间盛行的内存条,EDO DRAM同FPM DRAM(Fast Page Mode RAM 快速页面模式存储器)极其相似,它取消了扩展数据输出内存与传输内存两个存储周期之间的时间间隔,在把数据发送给CPU的同时去访问下一个页面,故而速度要比普通DRAM快15~30%。工作电压为一般为5V,带宽32bit,速度在40ns以上,其主要应用在当时的486及早期的Pentium电脑上。
在1991 年到1995 年中,让我们看到一个尴尬的情况,那就是这几年内存技术发展比较缓慢,几乎停滞不前,所以我们看到此时EDO DRAM有72 pin和168 pin并存的情况,事实上EDO内存也属于72pin SIMM 内存的范畴,不过它采用了全新的寻址方式。EDO 在成本和容量上有所突破,凭借着制作工艺的飞速发展,此时单条EDO内存的容量已经达到4 ~16MB。由于Pentium及更高级别的CPU数据总线宽度都是64bit甚至更高,所以EDO DRAM与FPM DRAM都必须成对使用。
自Intel Celeron系列以及AMD K6处理器以及相关的主板芯片组推出后,EDO DRAM内存性能再也无法满足需要了,内存技术必须彻底得到个革新才能满足新一代CPU架构的需求,此时内存开始进入比较经典的SDRAM时代。
第一代SDRAM内存为PC66 规范,但很快由于Intel 和AMD的频率之争将CPU外频提升到了100MHz,所以PC66内存很快就被PC100内存取代,接着133MHz 外频的PIII以及K7时代的来临,PC133规范也以相同的方式进一步提升SDRAM 的整体性能,带宽提高到1GB/sec以上。由于SDRAM 的带宽为64bit,正好对应CPU 的64bit 数据总线宽度,因此它只需要一条内存便可工作,便捷性进一步提高。在性能方面,由于其输入输出信号保持与系统外频同步,因此速度明显超越EDO 内存。
不可否认的是,SDRAM内存由早期的66MHz,发展后来的100MHz、133MHz,尽管没能彻底解决内存带宽的瓶颈问题,但此时CPU超频已经成为DIY用户永恒的话题,所以不少用户将品牌好的PC100品牌内存超频到133MHz使用以获得CPU超频成功,值得一提的是,为了方便一些超频用户需求,市场上出现了一些PC150、PC166规范的内存。
尽管SDRAM PC133内存的带宽可提高带宽到1064MB/S,加上Intel已经开始着手最新的Pentium 4计划,所以SDRAM PC133内存不能满足日后的发展需求,此时,Intel为了达到独占市场的目的,与Rambus联合在PC市场推广Rambus DRAM内存(称为RDRAM内存)。与SDRAM不同的是,其采用了新一代高速简单内存架构,基于一种类RISC(Reduced Instruction Set Computing,精简指令集计算机)理论,这个理论可以减少数据的复杂性,使得整个系统性能得到提高。
在AMD与Intel的竞争中,这个时候是属于频率竞备时代,所以这个时候CPU的主频在不断提升,Intel为了盖过AMD,推出高频PentiumⅢ以及Pentium 4 处理器,因此Rambus DRAM内存是被Intel看着是未来自己的竞争杀手锏,Rambus DRAM内存以高时钟频率来简化每个时钟周期的数据量,因此内存带宽相当出色,如PC 1066 1066 MHz 32 bits带宽可达到4.2G Byte/sec,Rambus DRAM曾一度被认为是Pentium 4 的绝配。
尽管如此,Rambus RDRAM内存生不逢时,后来依然要被更高速度的DDR“掠夺”其宝座地位,在当时,PC600、PC700的Rambus RDRAM 内存因出现Intel820芯片组“失误事件”、PC800 Rambus RDRAM因成本过高而让Pentium 4平台高高在上,无法获得大众用户拥戴,种种问题让Rambus RDRAM胎死腹中,Rambus曾希望具有更高频率的PC1066 规范RDRAM来力挽狂澜,但最终也是拜倒在DDR 内存面前。
DDRSDRAM(Double Data Rate SDRAM)简称DDR,也就是“双倍速率SDRAM”的意思。DDR可以说是SDRAM的升级版本,DDR在时钟信号上升沿与下降沿各传输一次数据,这使得DDR的数据传输速度为传统SDRAM的两倍。由于仅多采用了下降缘信号,因此并不会造成能耗增加。至于定址与控制信号则与传统SDRAM相同,仅在时钟上升缘传输。
DDR内存是作为一种在性能与成本之间折中的解决方案,其目的是迅速建立起牢固的市场空间,继而一步步在频率上高歌猛进,最终弥补内存带宽上的不足。第一代DDR200 规范并没有得到普及,第二代PC266 DDR SRAM(133MHz时钟×2倍数据传输=266MHz带宽)是由PC133SDRAM内存所衍生出的,它将DDR 内存带向第一个高潮,目前还有不少赛扬和AMD K7处理器都在采用DDR266规格的内存,其后来的DDR333内存也属于一种过度,而DDR400内存成为目前的主流平台选配,双通道DDR400内存已经成为800FSB处理器搭配的基本标准,随后的DDR533 规范则成为超频用户的选择对象。
随着CPU 性能不断提高,我们对内存性能的要求也逐步升级。不可否认,紧紧依高频率提升带宽的DDR迟早会力不从心,因此JEDEC 组织很早就开始酝酿DDR2 标准,加上LGA775接口的915/925以及最新的945等新平台开始对DDR2内存的支持,所以DDR2内存将开始演义内存领域的今天。
DDR2 能够在100MHz 的发信频率基础上提供每插脚最少400MB/s 的带宽,而且其接口将运行于1.8V 电压上,从而进一步降低发热量,以便提高频率。此外,DDR2 将融入CAS、OCD、ODT 等新性能指标和中断指令,提升内存带宽的利用率。从JEDEC组织者阐述的DDR2标准来看,针对PC等市场的DDR2内存将拥有400、533、667MHz等不同的时钟频率。高端的DDR2内存将拥有800、1000MHz两种频率。DDR-II内存将采用200-、220-、240-针脚的FBGA封装形式。最初的DDR2内存将采用0.13微米的生产工艺,内存颗粒的电压为1.8V,容量密度为512MB。
内存技术在2005年将会毫无悬念,SDRAM为代表的静态内存在五年内不会普及。QBM与RDRAM内存也难以挽回颓势,因此DDR与DDR2共存时代将是铁定的事实。
PC-100的“接班人”除了PC一133以外,VCM(VirXual Channel Memory)也是很重要的一员。VCM即“虚拟通道存储器”,这也是目前大多数较新的芯片组支持的一种内存标准,VCM内存主要根据由NEC公司开发的一种“缓存式DRAM”技术制造而成,它集成了“通道缓存”,由高速寄存器进行配置和控制。在实现高速数据传输的同时,VCM还维持着对传统SDRAM的高度兼容性,所以通常也把VCM内存称为VCM SDRAM。VCM与SDRAM的差别在于不论是否经过CPU处理的数据,都可先交于VCM进行处理,而普通的SDRAM就只能处理经CPU处理以后的数据,所以VCM要比SDRAM处理数据的速度快20%以上。目前可以支持VCM SDRAM的芯片组很多,包括:Intel的815E、VIA的694X等。
3.RDRAM
Intel在推出:PC-100后,由于技术的发展,PC-100内存的800MB/s带宽已经不能满足需求,而PC-133的带宽提高并不大(1064MB/s),同样不能满足日后的发展需求。Intel为了达到独占市场的目的,与Rambus公司联合在PC市场推广Rambus DRAM(DirectRambus DRAM)。
Rambus DRAM是:Rambus公司最早提出的一种内存规格,采用了新一代高速简单内存架构,基于一种RISC(Reduced Instruction Set Computing,精简指令集计算机)理论,从而可以减少数据的复杂性,使得整个系统性能得到提高。Rambus使用400MHz的16bit总线,在一个时钟周期内,可以在上升沿和下降沿的同时传输数据,这样它的实际速度就为400MHz×2=800MHz,理论带宽为(16bit×2×400MHz/8)1.6GB/s,相当于PC-100的两倍。另外,Rambus也可以储存9bit字节,额外的一比特是属于保留比特,可能以后会作为:ECC(ErroI·Checking and Correction,错误检查修正)校验位。Rambus的时钟可以高达400MHz,而且仅使用了30条铜线连接内存控制器和RIMM(Rambus In-line MemoryModules,Rambus内嵌式内存模块),减少铜线的长度和数量就可以降低数据传输中的电磁干扰,从而快速地提高内存的工作频率。不过在高频率下,其发出的热量肯定会增加,因此第一款Rambus内存甚至需要自带散热风扇。
DDR3相比起DDR2有更低的工作电压,从DDR2的1.8V降落到1.5V,性能更好更为省电;DDR2的4bit预读升级为8bit预读。DDR3目前最高能够达到2000Mhz的速度,尽管目前最为快速的DDR2内存速度已经提升到800Mhz/1066Mhz的速度,但是DDR3内存模组仍会从1066Mhz起跳。
一、DDR3在DDR2基础上采用的新型设计:
1.8bit预取设计,而DDR2为4bit预取,这样DRAM内核的频率只有接口频率的1/8,DDR3-800的核心工作频率只有100MHz。
2.采用点对点的拓朴架构,以减轻地址/命令与控制总线的负担。
3.采用100nm以下的生产工艺,将工作电压从1.8V降至1.5V,增加异步重置(Reset)与ZQ校准功能。部分厂商已经推出1.35V的低压版DDR3内存。
SRAM(Static RAM)意为静态随机存储器。SRAM数据不需要通过不断地刷新来保存,因此速度比DRAM(动态随机存储器)快得多。但是SRAM具有的缺点是:同容量相比DRAM需要非常多的晶体管,发热量也非常大。因此SRAM难以成为大容量的主存储器,通常只用在CPU、GPU中作为缓存,容量也只有几十K至几十M。
SRAM目前发展出的一个分支是eSRAM(Enhanced SRAM),为增强型SRAM,具备更大容量和更高运行速度。
RDRAM是由RAMBUS公司推出的内存。RDRAM内存条为16bit,但是相比同期的SDRAM具有更高的运行频率,性能非常强。
然而它是一个非开放的技术,内存厂商需要向RAMBUS公司支付授权费。并且RAMBUS内存的另一大问题是不允许空通道的存在,必须成对使用,空闲的插槽必须使用终结器。因此,除了短寿的Intel i820和i850芯片组对其提供支持外,PC平台没有支持RAMBUS内存的芯片组。
可以说,它是一个优秀的技术,但不是一个成功的商业产品。
磁性存储器。它和Fe-RAM具有相似性,依旧基于磁性物质来记录数据。
相变存储器。
奥弗辛斯基(Stanford Ovshinsky)在1968年发表了第一篇关于非晶体相变的论文,创立了非晶体半导体学。一年以后,他首次描述了基于相变理论的存储器:材料由非晶体状态变成晶体,再变回非晶体的过程中,其非晶体和晶体状态呈现不同的反光特性和电阻特性,因此可以利用非晶态和晶态分别代表“0”和“1”来存储数据。
从上表可以看出,在同等核心频率下,DDR2的实际工作频率是DDR的两倍。这得益于DDR2内存拥有两倍于标准DDR内存的4BIT预读取能力。换句话说,虽然DDR2和DDR一样,都采用了在时钟的上升延和下降延同时进行数据传输的基本方式,但DDR2拥有两倍于DDR的预读取系统命令数据的能力。也就是说,在同样100MHz的工作频率下,DDR的实际频率为200MHz,而DDR2则可以达到400MHz。
这样也就出现了另一个问题:在同等工作频率的DDR和DDR2内存中,后者的内存延时要慢于前者。举例来说,DDR 200和DDR2-400具有相同的延迟,而后者具有高一倍的带宽。实际上,DDR2-400和DDR 400具有相同的带宽,它们都是3.2GB/s,但是DDR400的核心工作频率是200MHz,而DDR2-400的核心工作频率是100MHz,也就是说DDR2-400的延迟要高于DDR400。
DDR2内存技术最大的突破点其实不在于用户们所认为的两倍于DDR的传输能力,而是在采用更低发热量、更低功耗的情况下,DDR2可以获得更快的频率提升,突破标准DDR的400MHZ限制。
DDR内存通常采用TSOP芯片封装形式,这种封装形式可以很好的工作在200MHz上,当频率更高时,它过长的管脚就会产生很高的阻抗和寄生电容,这会影响它的稳定性和频率提升的难度。这也就是DDR的核心频率很难突破275MHZ的原因。而DDR2内存均采用FBGA封装形式。不同于目前广泛应用的TSOP封装形式,FBGA封装提供了更好的电气性能与散热性,为DDR2内存的稳定工作与未来频率的发展提供了良好的保障。
DDR2内存采用1.8V电压,相对于DDR标准的2.5V,降低了不少,从而提供了明显的更小的功耗与更小的发热量,这一点的变化是意义重大的。
除了以上所说的区别外,DDR2还引入了三项新的技术,它们是OCD、ODT和Post CAS。
OCD(Off-Chip Driver):也就是所谓的离线驱动调整,DDR II通过OCD可以提高信号的完整性。DDR II通过调整上拉(pull-up)/下拉(pull-down)的电阻值使两者电压相等。使用OCD通过减少DQ-DQS的倾斜来提高信号的完整性;通过控制电压来提高信号品质。
ODT:ODT是内建核心的终结电阻器。我们知道使用DDR SDRAM的主板上面为了防止数据线终端反射信号需要大量的终结电阻。它大大增加了主板的制造成本。实际上,不同的内存模组对终结电路的要求是不一样的,终结电阻的大小决定了数据线的信号比和反射率,终结电阻小则数据线信号反射低但是信噪比也较低;终结电阻高,则数据线的信噪比高,但是信号反射也会增加。因此主板上的终结电阻并不能非常好的匹配内存模组,还会在一定程度上影响信号品质。DDR2可以根据自己的特点内建合适的终结电阻,这样可以保证最佳的信号波形。使用DDR2不但可以降低主板成本,还得到了最佳的信号品质,这是DDR不能比拟的。
Post CAS:它是为了提高DDR II内存的利用效率而设定的。在Post CAS操作中,CAS信号(读写/命令)能够被插到RAS信号后面的一个时钟周期,CAS命令可以在附加延迟(Additive Latency)后面保持有效。原来的tRCD(RAS到CAS和延迟)被AL(Additive Latency)所取代,AL可以在0,1,2,3,4中进行设置。由于CAS信号放在了RAS信号后面一个时钟周期,因此ACT和CAS信号永远也不会产生碰撞冲突。
总的来说,DDR2采用了诸多的新技术,改善了DDR的诸多不足,虽然它目前有成本高、延迟慢能诸多不足,但相信随着技术的不断提高和完善,这些问题终将得到解决。
1.突发长度(Burst Length,BL)
由于DDR3的预取为8bit,所以突发传输周期(Burst Length,BL)也固定为8,而对于DDR2和早期的DDR架构系统,BL=4也是常用的,DDR3为此增加了一个4bit Burst Chop(突发突变)模式,即由一个BL=4的读取操作加上一个BL=4的写入操作来合成一个BL=8的数据突发传输,届时可通过A12地址线来控制这一突发模式。而且需要指出的是,任何突发中断操作都将在DDR3内存中予以禁止,且不予支持,取而代之的是更灵活的突发传输控制(如4bit顺序突发)。
2.寻址时序(Timing)
就像DDR2从DDR转变而来后延迟周期数增加一样,DDR3的CL周期也将比DDR2有所提高。DDR2的CL范围一般在2~5之间,而DDR3则在5~11之间,且附加延迟(AL)的设计也有所变化。DDR2时AL的范围是0~4,而DDR3时AL有三种选项,分别是0、CL-1和CL-2。另外,DDR3还新增加了一个时序参数——写入延迟(CWD),这一参数将根据具体的工作频率而定。
3.DDR3新增的重置(Reset)功能
重置是DDR3新增的一项重要功能,并为此专门准备了一个引脚。DRAM业界很早以前就要求增加这一功能,如今终于在DDR3上实现了。这一引脚将使DDR3的初始化处理变得简单。当Reset命令有效时,DDR3内存将停止所有操作,并切换至最少量活动状态,以节约电力。
在Reset期间,DDR3内存将关闭内在的大部分功能,所有数据接收与发送器都将关闭,所有内部的程序装置将复位,DLL(延迟锁相环路)与时钟电路将停止工作,而且不理睬数据总线上的任何动静。这样一来,将使DDR3达到最节省电力的目的。
4.DDR3新增ZQ校准功能
ZQ也是一个新增的脚,在这个引脚上接有一个240欧姆的低公差参考电阻。这个引脚通过一个命令集,通过片上校准引擎(On-Die Calibration Engine,ODCE)来自动校验数据输出驱动器导通电阻与ODT的终结电阻值。当系统发出这一指令后,将用相应的时钟周期(在加电与初始化之后用512个时钟周期,在退出自刷新操作后用256个时钟周期、在其他情况下用64个时钟周期)对导通电阻和ODT电阻进行重新校准。
5.参考电压分成两个
在DDR3系统中,对于内存系统工作非常重要的参考电压信号VREF将分为两个信号,即为命令与地址信号服务的VREFCA和为数据总线服务的VREFDQ,这将有效地提高系统数据总线的信噪等级。
6.点对点连接(Point-to-Point,P2P)
这是为了提高系统性能而进行的重要改动,也是DDR3与DDR2的一个关键区别。在DDR3系统中,一个内存控制器只与一个内存通道打交道,而且这个内存通道只能有一个插槽,因此,内存控制器与DDR3内存模组之间是点对点(P2P)的关系(单物理Bank的模组),或者是点对双点(Point-to-two-Point,P22P)的关系(双物理Bank的模组),从而大大地减轻了地址/命令/控制与数据总线的负载。而在内存模组方面,与DDR2的类别相类似,也有标准DIMM(台式PC)、SO-DIMM/Micro-DIMM(笔记本电脑)、FB-DIMM2(服务器)之分,其中第二代FB-DIMM将采用规格更高的AMB2(高级内存缓冲器)。
面向64位构架的DDR3显然在频率和速度上拥有更多的优势,此外,由于DDR3所采用的根据温度自动自刷新、局部自刷新等其它一些功能,在功耗方面DDR3也要出色得多,因此,它可能首先受到移动设备的欢迎,就像最先迎接DDR2内存的不是台式机而是服务器一样。在CPU外频提升最迅速的PC台式机领域,DDR3未来也是一片光明。目前Intel预计在明年第二季所推出的新芯片-熊湖(Bear Lake),其将支持DDR3规格,而AMD也预计同时在K9平台上支持DDR2及DDR3两种规格。
首先,最早的内存异步工作模式出现在早期的主板芯片组中,可以使内存工作在比CPU外频高33MHz或者低33MHz的模式下(注意只是简单相差33MHz),从而可以提高系统内存性能或者使老内存继续发挥余热。
其次,在正常的工作模式(CPU不超频)下,目前不少主板芯片组也支持内存异步工作模式,例如Intel 910GL芯片组,仅仅只支持533MHz FSB即133MHz的CPU外频,但却可以搭配工作频率为133MHz的DDR 266、工作频率为166MHz的DDR 333和工作频率为200MHz的DDR 400正常工作(注意此时其CPU外频133MHz与DDR 400的工作频率200MHz已经相差66MHz了),只不过搭配不同的内存其性能有差异罢了。
再次,在CPU超频的情况下,为了不使内存拖CPU超频能力的后腿,此时可以调低内存的工作频率以便于超频,例如AMD的Socket 939接口的Opteron 144非常容易超频,不少产品的外频都可以轻松超上300MHz,而此如果在内存同步的工作模式下,此时内存的等效频率将高达DDR 600,这显然是不可能的,为了顺利超上300MHz外频,我们可以在超频前在主板BIOS中把内存设置为DDR 333或DDR 266,在超上300MHz外频之后,前者也不过才DDR 500(某些极品内存可以达到),而后者更是只有DDR 400(完全是正常的标准频率),由此可见,正确设置内存异步模式有助于超频成功。
目前的主板芯片组几乎都支持内存异步,英特尔公司从810系列到目前较新的875系列都支持,而威盛公司则从693芯片组以后全部都提供了此功能。
1024B=1KB=1024字节=2^10字节(^代表次方)
1024KB=1MB=1048576字节=2^20字节1024MB=1GB=1073741824字节=2^30字节
1024GB=1TB=1099511627776字节=2^40字节
1024TB=1PB=1125899906842624字节=2^50字节
1024PB=1EB=115 292150 4606846976字节=2^60字节
1024EB=1ZB=1180591620717411303424字节=2^70字节
1024ZB=1YB=1208925819614629174706176字节=2^80字节
内存的种类和运行频率会对性能有一定影响,不过相比之下,容量的影响更加大。在其他配置相同的条件下内存越大机器性能也就越高。内存的价格小幅走低,2011年前后,电脑内存的配置越来越大,一般都在1G以上,更有2G、4G、6G内存的电脑。
内存作为电脑中重要的配件之一,内存容量的大小确实能够直接关系到整个系统的性能。因此,内存容量已经越来越受到消费者的关注。尤其在目前WIN7操作系统已经开始取代XP之时,对于最新的WIN7操作系统,多数消费者都认为大容量能让其内存评分得到提升。
内存的工作原理。从功能上理解,我们可以将内存看作是内存控制器与CPU之间的桥梁,内存也就相当于“仓库”。显然,内存的容量决定“仓库”的大小,而内存的速度决定“桥梁”的宽窄,两者缺一不可,这也就是我们常常说道的“内存容量”与“内存速度”。
内存带宽的计算方法并不复杂,大家可以遵循如下的计算公式:带宽=总线宽度×总线频率×一个时钟周期内交换的数据包个数。很明显,在这些乘数因子中,每个都会对最终的内存带宽产生极大的影响。在PCMark Vantage测试中,可以看到2GB和4GB DDR3-1600内存性能比较接近,其中2GB内存仅在启动一些办公软件时候比较落后,毕竟少了一半容量所以运行起来比较吃力。而在3DmarkVantage游戏性能测试中,我们可以看出在Win7系统下,2GB和4GB内存的性能区别不是很大,成绩非常接近。同时,在WIN7环境下,2GB内存与4GB内存差别很小,有些情况下甚至没有差别,这时如果想提高内存性能,光想着升级容量意义并不是很大。
从功能上理解,我们可以将内存看作是内存控制器(一般位于北桥芯片中)与CPU之间的桥梁或与仓库。显然,内存的容量决定“仓库”的大小,而内存的带宽决定“桥梁”的宽窄,两者缺一不可,这也就是我们常常说道的“内存容量”与“内存速度”。除了内存容量与内存速度,延时周期也是决定其性能的关键。当CPU需要内存中的数据时,它会发出一个由内存控制器所执行的要求,内存控制器接著将要求发送至内存,并在接收数据时向CPU报告整个周期(从CPU到内存控制器,内存再回到CPU)所需的时间。毫无疑问,缩短整个周期也是提高内存速度的关键,这就好比在桥梁上工作的警察,其指挥疏通能力也是决定通畅度的因素之一。更快速的内存技术对整体性能表现有重大的贡献,但是提高内存带宽只是解决方案的一部分,数据在CPU以及内存间传送所花的时间通常比处理器执行功能所花的时间更长,为此缓冲区被广泛应用。其实,所谓的缓冲器就是CPU中的一级缓存与二级缓存,它们是内存这座“大桥梁”与CPU之间的“小桥梁”。事实上,一级缓存与二级缓存采用的是SRAM,我们也可以将其宽泛地理解为“内存带宽”,不过现在似乎更多地被解释为“前端总线”,所以我们也只是简单的提一下。事先预告一下,“前端总线”与“内存带宽”之间有着密切的联系,我们将会在后面的测试中有更加深刻的认识。
内存带宽为何会如此重要呢?在回答这一问题之前,我们先来简单看一看系统工作的过程。基本上当CPU接收到指令后,它会最先向CPU中的一级缓存(L1Cache)去寻找相关的数据,虽然一级缓存是与CPU同频运行的,但是由于容量较小,所以不可能每次都命中。这时CPU会继续向下一级的二级缓存(L2Cache)寻找,同样的道理,当所需要的数据在二级缓存中也没有的话,会继续转向L3Cache(如果有的话,如K6-2+和K6-3)、内存和硬盘。由于目前系统处理的数据量都是相当巨大的,因此几乎每一步操作都得经过内存,这也是整个系统中工作最为频繁的部件。如此一来,内存的性能就在一定程度上决定了这个系统的表现,这点在多媒体设计软件和3D游戏中表现得更为明显。3D显卡的内存带宽(或许称为显存带宽更为合适)的重要性也是不言而喻的,甚至其作用比系统的内存带宽更为明显。大家知道,显示卡在进行像素渲染时,都需要从显存的不同缓冲区中读写数据。这些缓冲区中有的放置描述像素ARGB(阿尔法通道,红,绿,蓝)元素的颜色数据,有的放置像素Z值(用来描述像素的深度或者说可见性的数据)。显然,一旦产生Z轴数据,显存的负担会立即陡然提升,在加上各种材质贴图、深度复杂性渲染、3D特效.
内存带宽的计算方法并不复杂,大家可以遵循如下的计算公式:带宽=总线宽度×总线频率×一个时钟周期内交换的数据包个数。很明显,在这些乘数因子中,每个都会对最终的内存带宽产生极大的影响。然而,如今在频率上已经没有太大文章可作,毕竟这受到制作工艺的限制,不可能在短时间内成倍提高。而总线宽度和数据包个数就大不相同了,简单的改变会令内存带宽突飞猛进。DDR技术就使我们感受到提高数据包个数的好处,它令内存带宽疯狂地提升一倍。当然,提高数据包个数的方法不仅仅局限于在内存上做文章,通过多个内存控制器并行工作同样可以起到效果,这也就是如今热门的双通道DDR芯片组(如nForce2、I875/865等)。事实上,双通道DDR内存控制器并不能算是新发明,因为早在RAMBUS时代,RDRAM就已经使用了类似技术,只不过当时RDRAM的总线宽度只有16Bit,无法与DDR的64Bit相提并论。内存技术发展到如今这一阶段,四通道内存控制器的出现也只是时间问题,VIA的QBM技术以及SiS支持四通道RDRAM的芯片组,这些都是未来的发展方向。至于显卡方面,我们对其显存带宽更加敏感,这甚至也是很多厂商用来区分高低端产品的重要方面。同样是使用DDR显存的产品,128Bit宽度的产品会表现出远远胜过64Bit宽度的产品。当然提高显存频率也是一种解决方案,不过其效果并不明显,而且会大幅度提高成本。值得注意的是,目前部分高端显卡甚至动用了DDRII技术,不过至少在目前看来,这项技术还为时过早。
对于内存而言,辨别内存带宽是一件相当简单的事情,因为SDRAM、DDR、RDRAM这三种内存在外观上有着很大的差别,大家通过下面这副图就能清楚地认识到。唯一需要我们去辨认的便是不同频率的DDR内存。目前主流DDR内存分为DDR266、DDR333以及DDR400,其中后三位数字代表工作频率。通过内存条上的标识,自然可以很方便地识别出其规格。相对而言,显卡上显存带宽的识别就要困难一些。在这里,我们应该抓住“显存位宽”和“显存频率”两个重要的技术指标。显存位宽的计算方法是:单块显存颗粒位宽×显存颗粒总数,而显存频率则是由"1000/显存颗粒纳秒数"来决定。一般来说,我们可以从显存颗粒上一串编号的最后2两位看出其纳秒数,从中也就得知其显存频率。至于单块显存颗粒位宽,我们只能在网上查询。HY、三星、EtronTech(钰创)等都提供专用的显存编号查询网站,相当方便。如三星的显存就可以到如下的地址下载,只要输入相应的显存颗粒编号即可。此外,使用RivaTuner也可以检测显卡上显存的总位宽,大家打开RivaTuner在MAIN菜单即可看到。
对于选择内存来说,最重要的是稳定性和性能,而内存的做工水平直接会影响到性能、稳定以及超频。
内存颗粒的好坏直接影响到内存的性能,可以说也是内存最重要的核心元件。所以大家在购买时,尽量选择大厂生产出来的内存颗粒,一般常见的内存颗粒厂商有三星、现代、镁光、南亚、茂矽等,它们都是经过完整的生产工序,因此在品质上都更有保障。而采用这些顶级大厂内存颗粒的内存条品质性能,必然会比其他杂牌内存颗粒的产品要高出许多。
内存PCB电路板的作用是连接内存芯片引脚与主板信号线,因此其做工好坏直接关系着系统稳定性。目前主流内存PCB电路板层数一般是6层,这类电路板具有良好的电气性能,可以有效屏蔽信号干扰。而更优秀的高规格内存往往配备了8层PCB电路板,以起到更好的效能。
SPD信息可以说非常重要,它能够直观反映出内存的性能及体制。它里面存放着内存可以稳定工作的指标信息以及产品的生产,厂家等信息。不过,由于每个厂商都能对SPD进行随意修改,因此很多杂牌内存厂商会将SPD参数进行修改或者直接COPY名牌产品的SPD,但是一旦上机用软件检测就会原形毕露。
因此,大家在购买内存以后,回去用常用的Everest、CPU-Z等软件一查即可明白。不过需要注意的是,对于大品牌内存来说SPD参数是非常重要的,但是对于杂牌内存来说,SPD的信息并不值得完全相信。
目前有一些内存往往使用了不同品牌、型号的内存颗粒,大家一眼就可以看出区别。同时有些无孔不入的JS也会采用打磨内存颗粒的作假手段,然后再加印上新的编号参数。不过仔细观察,就会发现打磨过后的芯片比较暗淡无光,有起毛的感觉,而且加印上的字迹模糊不清晰。这些一般都是假冒的内存产品,需要注意。
此外,大家还要观察PCB电路板是否整洁,有无毛刺等等,金手指是否很明显有经过插拔所留下的痕迹,如果有,则很有可能是返修内存产品(当然也不排除有厂家出厂前经过测试,不过比较少数)。需要提醒大家的是,返修和假冒内存无论多么便宜都不值得购买,因为其安全隐患十分严重。
一、开机无显示[5]
由于内存条原因出现此类故障一般是因为内存条与主板内存插槽接触不良造成,只要用橡皮擦来回擦试其金手指部位即可解决问题(不要用酒精等清洗),还有就是内存损坏或主板内存槽有问题也会造成此类故障。
出现此类故障一般是由于内存芯片质量不良或软件原因引起,如若确定是内存条原因只有更换一途。
三、windows注册表经常无故损坏,提示要求用户恢复
此类故障一般都是因为内存条质量不佳引起,很难予以修复,唯有更换一途。
四、windows经常自动进入安全模式
此类故障一般是由于主板与内存条不兼容或内存条质量不佳引起,常见于PC133内存用于某些不支持PC133内存条的主板上,可以尝试在CMOS设置内降低内存读取速度看能否解决问题,如若不行,那就只有更换内存条了。
五、随机性死机
此类故障一般是由于采用了几种不同芯片的内存条,由于各内存条速度不同产生一个时间差从而导致死机,对此可以在CMOS设置内降低内存速度予以解决,否则,唯有使用同型号内存。还有一种可能就是内存条与主板不兼容,此类现象一般少见,另外也有可能是内存条与主板接触不良引起电脑随机性死机,此类现象倒是比较常见。
六、内存加大后系统资源反而降低
此类现象一般是由于主板与内存不兼容引起,常见于PC133内存条用于某些不支持PC133内存条的主板上,即使系统重装也不能解决问题。
七、windows启动时,在载入高端内存文件himem.sys时系统提示某些地址有问题
此问题一般是由于内存条的某些芯片损坏造成,解决方法可参见下面内存维修一法。
八、运行某些软件时经常出现内存不足的提示
此现象一般是由于系统盘剩余空间不足造成,可以删除一些无用文件,多留一些空间即可,一般保持在300M左右为宜。
九、从硬盘引导安装windows进行到检测磁盘空间时,系统提示内存不足
此类故障一般是由于用户在config.sys文件中加入了emm386.exe文件,只要将其屏蔽掉即可解决问题。
十、安装windows进行到系统配置时产生一个非法错误
此类故障一般是由于内存条损坏造成,可以按内存维修一法来解决,如若不行,那就只有更换内存条了。
十一、启动windows时系统多次自动重新启动
此类故障一般是由于内存条或电源质量有问题造成,当然,系统重新启动还有可能是CPU散热不良或其他人为故障造成,对此,唯有用排除法一步一步排除。
十二、内存维修一法
出现上面几种故障后,倘若内存损坏或芯片质量不行,如条件不允许可以用烙铁将内存一边的各芯片卸下,看能否解决问题,如若不行再换卸另一边的芯片,直到成功为止(如此焊工只怕要维修手机的人方可达到)。当然,有条件用示波器检测那就事半功倍了),采用此法后,因为已将内存的一边芯片卸下,所以内存只有一半可用,例如,64M还有32M可用,为此,对于小容量内存就没有维修的必要了。
这种情况主要是发生在描述移动设备的内部集成的数据存放空间时。比如一台手机具备8G的数据存储空间,不少人将其描述为“8G内存”,事实上,这种表述是错误的,因为所谓的“8G内存”是一个外存储器。不能将“内部的外存储器”简称为”内存,因为内存是一个特定的概念,为内存储器的简称。
存储卡的容量不应当简称为“内存”,因其也是外存储器。
联系客服